ソースを参照

Fix mis-documentation in 8086 boot code comments

master
Virgil Dupras 3年前
コミット
7722db0762
2個のファイルの変更12行の追加13行の削除
  1. +8
    -13
      blk.fs
  2. +4
    -0
      doc/impl.txt

+ 8
- 13
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: 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
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.

Load range: B445-B461
( ----- 445 )
VARIABLE lblexec VARIABLE lblnext
H@ ORG !


+ 4
- 0
doc/impl.txt ファイルの表示

@@ -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


読み込み中…
キャンセル
保存