mirror of
https://github.com/hsoft/collapseos.git
synced 2024-12-25 04:48:06 +11:00
Fix mis-documentation in 8086 boot code comments
This commit is contained in:
parent
c939c7e84a
commit
7722db0762
19
blk.fs
19
blk.fs
@ -2533,19 +2533,14 @@ sure it goes back to its previous level before next is called.
|
||||
|
||||
(cont.)
|
||||
( ----- 441 )
|
||||
STABLE ABI: As a compatible binary, this binary follows the
|
||||
same stable ABI as its z80 counterpart.
|
||||
PS CHECKS: chkPS, is a bit different than in z80: it is para-
|
||||
metrizable. The idea is that we always call chkPS, before pop-
|
||||
ping, telling the expected size of stack. This allows for some
|
||||
interesting optimization. For example, in SWAP, no need to pop,
|
||||
chkPS, then push, we can chkPS and then proceed to optimized
|
||||
swapping in PS.
|
||||
|
||||
PS CHECKS: Unlike z80 boot code, we don't check PS at each next
|
||||
call (we do check RS though). It is the responsibility of every
|
||||
native PSP-modifying word to call chkPS, . Also, chkPS, is a
|
||||
bit different than in z80: it is parametrizable. The idea is
|
||||
that we always call chkPS, before popping, telling the expected
|
||||
size of stack. This allows for some interesting optimization.
|
||||
For example, in SWAP, no need to pop, chkPS, then push, we can
|
||||
chkPS and then proceed to optimized swapping in PS.
|
||||
|
||||
To assemble, load blocks 445 through 461
|
||||
Load range: B445-B461
|
||||
( ----- 445 )
|
||||
VARIABLE lblexec VARIABLE lblnext
|
||||
H@ ORG !
|
||||
|
@ -51,6 +51,10 @@ Stack underflow and overflow: In each native word involving
|
||||
PS popping, we check whether the stack is big enough. If it's
|
||||
not we go in "uflw" (underflow) error condition, then abort.
|
||||
|
||||
This means that if you implement a native word that involves
|
||||
popping from PS, you are expected to call chkPS, for under-
|
||||
flow situations.
|
||||
|
||||
We don't check RS for underflow because the cost of the check
|
||||
is significant and its usefulness is dubious: if RS isn't
|
||||
tightly in control, we're screwed anyways, and that, well
|
||||
|
Loading…
Reference in New Issue
Block a user