Robert Nordier
3d04f230e5
Revise a few comments.
1998-11-02 17:53:08 +00:00
Robert Nordier
3b1bd5ae35
Ignore, rather than emulate, an i386 'hlt' instruction (though for
...
most practical purposes, this should be indistinguishable from a
more strictly correct approach).
Feedback and testing: msmith
1998-11-01 13:52:52 +00:00
Mike Smith
4c1a7a5a8f
Make the BTX loader much more quiet about what it's doing. This removes
...
most of the "what the (*^&%(*^ was that?" stuff that normally flies by.
1998-10-30 00:11:35 +00:00
Mike Smith
f41c619d3d
Pop the return address off the stack before making a V86_CALLF call;
...
this allows us to implement what look like C function calls from user
space "directly" to v86 mode code. (Used for calling the PnP BIOS)
1998-10-22 20:22:07 +00:00
Robert Nordier
8f65b6a695
Don't use an absolute path to objcopy.
...
Noticed by: Scott Mace <smace@intt.org>
1998-10-13 18:29:18 +00:00
Robert Nordier
10806461a7
Override for ELF. Override .s.o suffix rule.
1998-10-11 11:27:48 +00:00
Robert Nordier
b7b32c2745
Fix for "get base memory" bug found and mostly fixed by Mike.
1998-10-06 07:15:35 +00:00
Mike Smith
024e2ede72
The BIOS memory size is only a word. Some BIOSsen have garbage in the other
...
16 bits we were reading here, causing loss of arguments.
1998-10-06 06:13:36 +00:00
Robert Nordier
731a4a01db
Adjust setting of argument pointer for BTX 0.87.
1998-10-04 21:15:45 +00:00
Robert Nordier
18577050a0
Allocate space for storing of arguments at the end of conventional
...
memory.
1998-10-04 21:14:33 +00:00
Robert Nordier
3948b979ba
For system calls, reboot without prompting; for exceptions, display
...
message and await reset.
1998-10-03 18:05:12 +00:00
Robert Nordier
9cd66506dd
Map all BTX system pages readable at ring 3.
...
This resolves the firmware problem first raised in connection
with PR 8105, although unrelated.
1998-10-03 14:33:06 +00:00
Mike Smith
9d38269bae
Fix an egregious precedence bug.
1998-10-02 20:52:26 +00:00
Mike Smith
39de38225b
Mark exit() as __attribute__((__noreturn__))
1998-10-02 16:22:54 +00:00
Peter Wemm
c7f3e669b7
Make these compile when there is an obj dir.
1998-09-25 17:14:16 +00:00
Mike Smith
948486abe3
Initial integration of the i386 bootloader and BTX.
...
- Discard large amounts of BIOS-related code in favour of the more compact
BTX vm86 interface.
- Build the loader module as ELF, although the resulting object is a.out,
make gensetdefs 32/64-bit sensitive and use a single copy of it.
- Throw away installboot, as it's no longer required.
- Use direct bcopy operations in the i386_copy module, as BTX
maps the first 16M of memory. Check operations against the
detected size of actual memory.
1998-09-17 23:52:16 +00:00
Robert Nordier
ec3009d3ec
Add exec syscall.
1998-09-15 13:26:23 +00:00
Mike Smith
0d5d0b20dc
Resynch with working sources before BTX integration.
...
- Use format-independant module allocator.
- Conditionalise ISA PnP support.
- Simplify PnP enumerator interface.
- Improve module/object searching.
- Add missing depend/install targets in BTX makefiles.
- Pass the kernel environment and module data in extended bootinfo fields.
- Add a pointer to the end of the kernel + modules in bootinfo.
- Fix parsing of old-style kernel arguments.
1998-09-14 18:27:06 +00:00
Robert Nordier
4cbf0238eb
Add BTX startup/interface code.
1998-09-14 10:37:00 +00:00
Robert Nordier
38c931abc7
Enable client entry point support.
1998-09-13 13:28:07 +00:00
Robert Nordier
b0923a2edc
Add btxldr, a BTX loader for ELF clients.
1998-09-12 06:30:26 +00:00
Robert Nordier
aa7af79537
BTX (aka the boot extender) is an i386 kernel that hosts 32-bit
...
bootstrap programs, and provides page-level protection, hardware
interrupt reflection, a virtual-8086 mode interface to BIOS, etc.
1998-09-12 04:29:23 +00:00