瀏覽代碼

Make KEY and EMIT into switch words

master
Virgil Dupras 3 年之前
父節點
當前提交
5e13dcedf3
共有 6 個文件被更改,包括 12 次插入17 次删除
  1. +1
    -3
      blk/381
  2. +1
    -4
      blk/387
  3. +2
    -2
      blk/396
  4. 二進制
      cvm/forth.bin
  5. +6
    -6
      recipes/trs80/README.md
  6. +2
    -2
      recipes/trs80/xcomp.fs

+ 1
- 3
blk/381 查看文件

@@ -1,6 +1,4 @@
: EMIT
( 0x53==(emit) override )
0x53 RAM+ @ ?DUP IF EXECUTE ELSE (emit) THEN ;
SYSVARS 0x53 + :** EMIT
: (print) C@+ ( a len ) 0 DO C@+ EMIT LOOP DROP ; : (print) C@+ ( a len ) 0 DO C@+ EMIT LOOP DROP ;
: BS 8 EMIT ; : LF 10 EMIT ; : CR 13 EMIT ; : BS 8 EMIT ; : LF 10 EMIT ; : CR 13 EMIT ;
: CRLF CR LF ; : SPC 32 EMIT ; : CRLF CR LF ; : SPC 32 EMIT ;


+ 1
- 4
blk/387 查看文件

@@ -8,9 +8,6 @@
; ;
( del is same as backspace ) ( del is same as backspace )
: BS? DUP 0x7f = SWAP 0x8 = OR ; : BS? DUP 0x7f = SWAP 0x8 = OR ;

: KEY
0x55 RAM+ @ ( (key) override )
?DUP IF EXECUTE ELSE (key) THEN ;
SYSVARS 0x55 + :** KEY
( cont.: read one char into input buffer and returns whether we ( cont.: read one char into input buffer and returns whether we
should continue, that is, whether CR was not met. ) should continue, that is, whether CR was not met. )

+ 2
- 2
blk/396 查看文件

@@ -3,8 +3,8 @@
0x02 RAM+ CURRENT* ! 0x02 RAM+ CURRENT* !
CURRENT @ 0x2e RAM+ ! ( 2e == BOOT C< PTR ) CURRENT @ 0x2e RAM+ ! ( 2e == BOOT C< PTR )
0 0x08 RAM+ ! ( 08 == C<* override ) 0 0x08 RAM+ ! ( 08 == C<* override )
0 0x53 RAM+ ! ( 53 == (emit) override )
0 0x55 RAM+ ! ( 55 == (key) override )
['] (emit) ['] EMIT **!
['] (key) ['] KEY **!
['] CRLF ['] NL **! ['] CRLF ['] NL **!
( 0c == C<* ) ( 0c == C<* )
['] (boot<) 0x0c RAM+ ! ['] (boot<) 0x0c RAM+ !


二進制
cvm/forth.bin 查看文件


+ 6
- 6
recipes/trs80/README.md 查看文件

@@ -233,14 +233,14 @@ blocks per disk.
You'll need to send those blocks through RS-232. Begin by taking over the You'll need to send those blocks through RS-232. Begin by taking over the
prompt: prompt:


' *CL> 0x53 RAM+ !
' *CL< 0x55 RAM+ !
' *CL> ' EMIT **!
' *CL< ' KEY **!


See B80 for details about those RAM offsets. Your serial link now has the See B80 for details about those RAM offsets. Your serial link now has the
prompt. You will also have to make your newlines CRLF. The TRS-80 wants CR prompt. You will also have to make your newlines CRLF. The TRS-80 wants CR
only, but serial communications (and `blkup`) expect CRLF: only, but serial communications (and `blkup`) expect CRLF:


' CRLF 0x0a RAM+ !
' CRLF ' NL **!


Now, you can use `/tools/blkup` to send a disk's contents. First, Now, you can use `/tools/blkup` to send a disk's contents. First,
extract the first 100 blocks from blkfs: extract the first 100 blocks from blkfs:
@@ -264,9 +264,9 @@ own Collapse OS floppy set. See Usage guide (B3) for details.


Once you're done, you will want to go back to local control: Once you're done, you will want to go back to local control:


' CR 0x0a RAM+ !
0 0x55 RAM+ !
0 0x53 RAM+ !
' CR ' NL **!
' (emit) ' EMIT **!
' (key) ' KEY **!


## Self-hosting ## Self-hosting




+ 2
- 2
recipes/trs80/xcomp.fs 查看文件

@@ -14,7 +14,7 @@ RS_ADDR 0x80 - CONSTANT SYSVARS
(entry) _ (entry) _
( Update LATEST ) ( Update LATEST )
PC ORG @ 8 + ! PC ORG @ 8 + !
( 0x0a == NLPTR. TRS-80 wants CR-only newlines )
," ' CR 0x0a RAM+ ! BLK$ FD$ " EOT,
( TRS-80 wants CR-only newlines )
," ' CR ' NL **! BLK$ FD$ " EOT,
ORG @ 256 /MOD 2 PC! 2 PC! ORG @ 256 /MOD 2 PC! 2 PC!
H@ 256 /MOD 2 PC! 2 PC! H@ 256 /MOD 2 PC! 2 PC!

Loading…
取消
儲存