| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
worrying about its stack being destroyed during the Etherboot run.
|
|
|
|
| |
need for a CONFIG_RELOCATE.
|
| |
|
| |
|
|
|
|
|
| |
install() now calls relocate(), moves the protected-mode code to the new
location, and calls hide_etherboot().
|
| |
|
|
|
|
|
|
| |
Change semantics; relocate() now just finds a suitable location; it
doesn't actually perform the relocation itself. Code in libprefix does
the copy in flat real mode.
|
| |
|
|
|
|
| |
order?
|
| |
|
| |
|
|
|
|
| |
requiring each caller to decide how many entries it wants to permit.
|
|
|
|
| |
REAL_CODE() don't need it.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
int13_boot() now does its own segment register save and restore, ready
for the removal of segment register restoration from the libkir
generic code.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Ignore carry flag for INT 15,88; the Ralf Brown interrupt list says
that CF is unreliable for this call.
|
|
|
|
| |
completely.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the only one we actually use). This allows REAL_EXEC fragments to
contain proper references to constraints (e.g. "%w0"), rather than having
to force the use of specific registers.
Note that the "num_constraints" parameter is now completely obsolete, and
that we can probably reduce the syntax to something like
__asm__ __volatile__ ( REAL_CODE ( "asm statements" )
: output constraints
: input constraints
: clobber );
which would look much more natural, and avoid the need to always specify
a clobber list.
Add userptr_t to libkir.h, to allow it to at least compile.
|
|
|
|
| |
and creating a memory map that's easier to work with than the E820 map.
|
|
|
|
|
| |
down to base memory, since it is now in the base-memory-resident
.text16 section).
|
|
|
|
|
|
| |
usual __{text,data}16 trick work with arrays. gcc seems to accept the
__asm__ ( asmlabel ) only after the [] of the array declaration, not
before.
|
|
|
|
|
|
|
|
|
|
| |
We now split e820 regions around ourselves, rather than just
truncating the e820 region. This avoids the worst-case scenario of
losing all memory over 4GB.
It's more important to get the memory map right now that we're
expecting to still be loaded when the OS starts in several situations
(e.g. Linux with UNDI driver, any OS with iSCSI/AoE boot, etc.).
|
|
|
|
|
|
| |
- implemented hline/vline (part of wborder family)
- screen cursor now relocates at same time as window cursor when
restoring after a non-wrapping function
|
|
|
|
| |
Also trim another eight bytes from vsprintf.o. :)
|
|
|
|
|
| |
- fixes to wborder (same)
- addition of a few minor functions
|
| |
|
| |
|
|
|
|
| |
enough to support both real IDE chipsets and AoE.
|
|
|
|
|
|
|
|
| |
Tidied up debug messages; the log now contains one line per INT 13
operation, looking like
INT 13,08 (80): Get drive parameters
INT 13,02 (80): Read: C/H/S 0/47/14 = LBA 0xb9e <-> 1084:0000 (count 106)
|
| |
|
| |
|
|
|
|
|
| |
READ(16) is mandatory); we must use READ CAPACITY (10) first and then
use READ CAPACITY (16) if the READ CAPACITY (10) returns "out of range".
|
| |
|
|
|
|
| |
options even when we want to use the defaults.
|
|
|
|
|
|
|
|
|
| |
- added extern declarations for global vars
- removed comments from static inlines (too time consuming to do them
all, considering all so far have been due to the ridiculous amount of
redundancy within the API spec)
- removed a few more extern func decls for funcs that cannot be
implemented at this time
|
|
|
|
|
|
|
| |
not way to scroll...)
- implemented color_content, wborder, wblrtobot, wclrtoeol, wcolor_set and several small functions
- added rest of expected global variables
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the kernel), which encapsulates the information needed to refer to an
external buffer. Under normal operation, this can just be a void *
equivalent, but under -DKEEP_IT_REAL it would be a segoff_t equivalent.
Use this concept to avoid the need for bounce buffers in int13.c,
which reduces memory usage and opens up the possibility of using
multi-sector reads.
Extend the block-device API and the SCSI block device implementation
to support multi-sector reads.
Update iscsi.c to use user buffers.
Move the obsolete portions of realmode.h to old_realmode.h.
MS-DOS now boots an order of magnitude faster over iSCSI (~10 seconds
from power-up to C:> prompt in bochs).
|
|
|
|
| |
about format errors for %zX arguments.
|
| |
|
|
|
|
|
|
|
|
|
| |
errors; still need to verify data integrity).
SCSI response PDUs are handled: status and sense data (if available) are
returned via the scsi_command structure.
Updated iSCSI session parameter usage.
|