ソースを参照

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 ;
: BS 8 EMIT ; : LF 10 EMIT ; : CR 13 EMIT ;
: CRLF CR LF ; : SPC 32 EMIT ;


+ 1
- 4
blk/387 ファイルの表示

@@ -8,9 +8,6 @@
;
( del is same as backspace )
: 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
should continue, that is, whether CR was not met. )

+ 2
- 2
blk/396 ファイルの表示

@@ -3,8 +3,8 @@
0x02 RAM+ CURRENT* !
CURRENT @ 0x2e RAM+ ! ( 2e == BOOT C< PTR )
0 0x08 RAM+ ! ( 08 == C<* override )
0 0x53 RAM+ ! ( 53 == (emit) override )
0 0x55 RAM+ ! ( 55 == (key) override )
['] (emit) ['] EMIT **!
['] (key) ['] KEY **!
['] CRLF ['] NL **!
( 0c == C<* )
['] (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
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
prompt. You will also have to make your newlines CRLF. The TRS-80 wants CR
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,
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:

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

## Self-hosting



+ 2
- 2
recipes/trs80/xcomp.fs ファイルの表示

@@ -14,7 +14,7 @@ RS_ADDR 0x80 - CONSTANT SYSVARS
(entry) _
( Update LATEST )
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!
H@ 256 /MOD 2 PC! 2 PC!

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