• R/O
  • HTTP
  • SSH
  • HTTPS

fig-forth-68000: Commit

Source code for fig-forth-68000


Commit MetaInfo

Révision9d2d206cc9c6aa08976f97dd81ed7efc6cddb63b (tree)
l'heure2023-01-17 21:10:03
AuteurJoel Matthew Rees <joel.rees@gmai...>
CommiterJoel Matthew Rees

Message de Log

to LIT16, assembling okay

Change Summary

Modification

--- a/FIG68K.S
+++ b/FIG68K.S
@@ -319,7 +319,6 @@ FORTH: DC.L DODOES,DOVOC,$81A0,TASK-7
319319 DC.B $CB
320320 DC.L FORTH-8
321321 TASK: DC.L DOCOL,SEMIS
322- EVEN
323322 *
324323 REND EQU * ( first empty location in dictionary )
325324 RSIZE EQU *-RBEG ; So we can look at it.
@@ -446,11 +445,11 @@ DELINT DC.L 4 ; initial carriage return delay
446445 * ######>> screen 13 <<
447446 * These are of questionable use anyway,
448447 * and are too much trouble to use with native subroutine call anyway.
449-PULABX MOVE.L (PSP)+,D0
450-STABX MOVE.L D0,(A0)
448+POPD0X MOVE.L (PSP)+,D0 ; These may actually not end up being used.
449+STD0X MOVE.L D0,(A0)
451450 BRA.S NEXT
452451 GETX MOVE.L (A0),D0
453-PUSHBA MOVE.L D0,-(PSP) ; fall through to NEXT
452+PUSHD0 MOVE.L D0,-(PSP) ; fall through to NEXT
454453
455454 * "NEXT" takes ?? cycles if TRACE is removed,
456455 *
@@ -476,18 +475,78 @@ PUSHBA MOVE.L D0,-(PSP) ; fall through to NEXT
476475 *
477476 NEXT: ; IP is a register.
478477 NEXT2 MOVE.L (IP),W ; get W which points to CFA of word to be done
479-NEXT3 MOVE.L (W),A2 ; get characteristic address, save cycles by not bumping.
478+NEXT3 MOVE.L (W),VEC ; get characteristic address, save cycles by not bumping.
480479 * These NOPs can be patched at run-time to JMP TRACE =
481480 * if a TRACE routine is available: =
482481 NOP =
483482 NOP =
484- JMP (A2) =
483+ JMP (VEC) =
485484 * In other words, with the call and the NOP,
486-* there is room to patch the call with a JMP to your TRACE
485+* there is room to patch the loop with a call to your TRACE
487486 * routine, which you have to provide.
488487 * =
489488 * = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
490489
490+ PAGE
491+*
492+* ======>> 1 <<
493+* ( --- n )
494+* Pushes the following natural width integer from the instruction stream
495+* as a literal, or immediate value.
496+*
497+* DC.L {OP}
498+* DC.L {OP}
499+* DC.L LIT
500+* DC.L LITERAL-TO-BE-PUSHED
501+* DC.L {OP}
502+*
503+* In native processor code, there should be a better way, use that instead.
504+* More specifically, DO NOT CALL THIS from assembly language code.
505+* (Note that there is no compile-only flag in the fig model.)
506+*
507+* See (FIND), or PFIND , for layout of the header format.
508+*
509+ EVEN
510+ DC.B $83
511+ DC.B 'LI' ; 'LIT' : NOTE: this is different from LITERAL
512+ DC.B $D4 ; 'T'|'\x80' ; character code for T, with high bit set.
513+ DC.L 0 ; link of zero to terminate dictionary scan
514+LIT DC.L *+NATWID ; Note also that LIT is meaningless in native code.
515+ MOVE.L (IP)+,-(PSP)
516+ BRA.S NEXT
517+*
518+* ######>> screen 14 <<
519+* ======>> 2 <<
520+* ( --- n )
521+* Save a little dictionary space by pushing a half-width value as a full-width value.
522+* LIT8 won't work with the 68000 because of alignment problems,
523+* But LIT16 will save a little space.
524+* Pushes the following 16-bit word from the instruction stream
525+* as a literal, or immediate value.
526+
527+*
528+* DC.L {OP}
529+* DC.L {OP}
530+* DC.L LIT16
531+* DC.W LITERAL-TO-BE-PUSHED
532+* DC.L {OP}
533+*
534+* If this is kept, it should have a header for TRACE to read.
535+* If the data bus is wider than a byte, you don't want to do this.
536+* Byte shaving like this is often counter-productive anyway.
537+* Changing the name to LIT16, hoping that will be more understandable.
538+* Also, see comments for LIT.
539+* (Note that there is no compile-only flag in the fig model.)
540+ EVEN
541+ DC.B 0
542+ DC.B $85
543+ DC.B 'LIT1' ; 'LIT16' : NOTE: this is different from LITERAL
544+ DC.B $B6
545+ DC.L LIT-6
546+LIT16 DC.L *+NATWID (this was an invisible word, with no header)
547+ MOVE.W (IP)+,D0
548+ EXT.W D0
549+ BRA.W PUSHD0
491550
492551
493552
@@ -561,81 +620,13 @@ RAMDSK EQU MASSLO
561620 PAGE
562621
563622
564- PAGE
565-*
566-* ======>> 1 <<
567-* ( --- n )
568-* Pushes the following natural width integer from the instruction stream
569-* as a literal, or immediate value.
570-*
571-* DC.L {OP}
572-* DC.L {OP}
573-* DC.L LIT
574-* DC.L LITERAL-TO-BE-PUSHED
575-* DC.L {OP}
576-*
577-* In native processor code, there should be a better way, use that instead.
578-* More specifically, DO NOT CALL THIS from assembly language code.
579-* (Note that there is no compile-only flag in the fig model.)
580-*
581-* See (FIND), or PFIND , for layout of the header format.
582-*
583- FCB $83
584- FCC 'LI' ; 'LIT' : NOTE: this is different from LITERAL
585- FCB $D4 ; 'T'|'\x80' ; character code for T, with high bit set.
586- FDB 0 ; link of zero to terminate dictionary scan
587-LIT FDB *+NATWID ; Note also that LIT is meaningless in native code.
588- LDD ,Y++
589- PSHU A,B
590- LBRA NEXT
591-* LDX IP
592-* LEAX 1,X ;
593-* LEAX 1,X ;
594-* STX IP
595-* LDA 0,X
596-* LDB 1,X
597-* JMP PUSHBA
598-*
599-* ######>> screen 14 <<
600-* ======>> 2 <<
601-* ( --- n )
602-* Pushes the following byte from the instruction stream
603-* as a literal, or immediate value.
604-*
605-* FDB {OP}
606-* FDB {OP}
607-* FDB LIT8
608-* FCB LITERAL-TO-BE-PUSHED
609-* FDB {OP}
610-*
611-* If this is kept, it should have a header for TRACE to read.
612-* If the data bus is wider than a byte, you don't want to do this.
613-* Byte shaving like this is often counter-productive anyway.
614-* Changing the name to LIT8, hoping that will be more understandable.
615-* Also, see comments for LIT.
616-* (Note that there is no compile-only flag in the fig model.)
617- FCB $84
618- FCC 'LIT' ; 'LIT8' : NOTE: this is different from LITERAL
619- FCB $B8
620- FDB LIT-6
621-LIT8 FDB *+NATWID (this was an invisible word, with no header)
622- LDB ,Y+ ; This also is meaningless in native code.
623- CLRA
624- PSHU A,B
625- LBRA NEXT
626-* LDX IP
627-* LEAX 1,X ;
628-* STX IP
629-* CLRA ;
630-* LDB 1,X
631-* JMP PUSHBA
632623 *
633624 * ( n off --- n )
634625 * off is offset in video buffer area.
635626 FCB $87
636627 FCC 'SHOWTO' ; 'SHOWTOS'
637628 FCB $D3 ; 'S'
638- FDB LIT8-7
629+ FDB LIT16-7
639630 SHOTOS FDB *+NATWID
640631 LDX #$400
641632 LDD ,U++
@@ -1124,7 +1115,7 @@ FOUND LEAX 2*NATWID,X
11241115 *
11251116 * CLRA ;
11261117 * CLRB ;
1127-* JMP PUSHBA
1118+* JMP PUSHD0
11281119 * PFNDCH PSHS B ; ** emulating CBA:
11291120 * CMPA ,S+ ;
11301121 * BEQ PFNDBR
@@ -1147,13 +1138,13 @@ FOUND LEAX 2*NATWID,X
11471138 * CLRA ;
11481139 * PSHS A ;
11491140 * LDB #1
1150-* JMP PUSHBA
1141+* JMP PUSHD0
11511142 *
11521143 * PSHS A ; Left over from a stray copy-paste, I guess.
11531144 * CLRA ;
11541145 * PSHS A ;
11551146 * LDB #1
1156-* JMP PUSHBA
1147+* JMP PUSHD0
11571148 *
11581149 * ######>> screen 20 <<
11591150 * ======>> 12 <<
@@ -1262,7 +1253,7 @@ ENC0TR
12621253 * PSHS A ;
12631254 * * advance and push NC
12641255 * INCB ;
1265-* JMP PUSHBA
1256+* JMP PUSHD0
12661257 * found NUL before non-delimiter, therefore there is no word
12671258 * ENCNUL LDB N found NUL
12681259 * PSHS B ;
@@ -1275,7 +1266,7 @@ ENC0TR
12751266 * PSHS B ; save EW
12761267 * PSHS A ;
12771268 * ENCL8 LDB N save NC
1278-* JMP PUSHBA
1269+* JMP PUSHD0
12791270
12801271 PAGE
12811272 *
@@ -1345,7 +1336,7 @@ QTERM FDB *+NATWID
13451336 LBRA NEXT
13461337 * JSR PQTER
13471338 * CLRB ;
1348-* JMP PUSHBA stack the flag
1339+* JMP PUSHD0 stack the flag
13491340 *
13501341 * ======>> 16 <<
13511342 * ( --- )
@@ -1536,7 +1527,7 @@ USTAR4 STD 1,U
15361527 * BSR USTARS
15371528 * LEAS 1,S ;
15381529 * LEAS 1,S ;
1539-* JMP PUSHBA
1530+* JMP PUSHD0
15401531 *
15411532 * The following is a subroutine which
15421533 * multiplies top 2 words on stack,
@@ -1669,7 +1660,7 @@ AND FDB *+NATWID
16691660 * TFR S,X ; TSX :
16701661 * ANDB 1,X
16711662 * ANDA 0,X
1672-* JMP STABX
1663+* JMP STD0X
16731664 *
16741665 * ======>> 21 <<
16751666 * ( n1 n2 --- n )
@@ -1689,7 +1680,7 @@ OR FDB *+NATWID
16891680 * TFR S,X ; TSX :
16901681 * ORB 1,X
16911682 * ORA 0,X
1692-* JMP STABX
1683+* JMP STD0X
16931684 *
16941685 * ======>> 22 <<
16951686 * ( n1 n2 --- n )
@@ -1709,7 +1700,7 @@ XOR FDB *+NATWID
17091700 * TFR S,X ; TSX :
17101701 * EORB 1,X
17111702 * EORA 0,X
1712-* JMP STABX
1703+* JMP STD0X
17131704 *
17141705 * ######>> screen 26 <<
17151706 * ======>> 23 <<
@@ -1854,7 +1845,7 @@ FROMR FDB *+NATWID
18541845 * LEAX 1,X ;
18551846 * LEAX 1,X ;
18561847 * STX RP
1857-* JMP PUSHBA
1848+* JMP PUSHD0
18581849 *
18591850 * ======>> 30 <<
18601851 * ( --- n )
@@ -1905,7 +1896,7 @@ ZEQUF STD ,U
19051896 * BNE ZEQU2
19061897 * INCB ;
19071898 *ZEQU2 TFR S,X ; TSX :
1908-* JMP STABX
1899+* JMP STD0X
19091900 *
19101901 * ======>> 32 <<
19111902 * ( n --- n<0 )
@@ -1927,9 +1918,9 @@ ZLESSF STD ,U
19271918 * BEQ ZLESS2
19281919 * CLRA ; if neg.
19291920 * LDB #1
1930-* JMP STABX
1921+* JMP STD0X
19311922 * ZLESS2 CLRB ;
1932-* JMP STABX
1923+* JMP STD0X
19331924 *
19341925 * ######>> screen 29 <<
19351926 * ======>> 33 <<
@@ -1948,7 +1939,7 @@ PLUS FDB *+NATWID
19481939 * TFR S,X ; TSX :
19491940 * ADDB 1,X
19501941 * ADCA 0,X
1951-* JMP STABX
1942+* JMP STD0X
19521943 *
19531944 * ======>> 34 <<
19541945 * ( d1 d2 --- d1+d2 )
@@ -2048,7 +2039,7 @@ OVER FDB *+NATWID
20482039 * TFR S,X ; TSX :
20492040 * LDA 2,X
20502041 * LDB 3,X
2051-* JMP PUSHBA
2042+* JMP PUSHD0
20522043 *
20532044 * ======>> 38 <<
20542045 * ( n --- )
@@ -2103,7 +2094,7 @@ DUP FDB *+NATWID
21032094 * PULS B ;
21042095 * PSHS B ;
21052096 * PSHS A ;
2106-* JMP PUSHBA
2097+* JMP PUSHD0
21072098 *
21082099 * ######>> screen 31 <<
21092100 * ======>> 41 <<
@@ -2189,7 +2180,7 @@ CAT FDB *+NATWID
21892180 * LDB 0,X
21902181 * LEAS 1,S ;
21912182 * LEAS 1,S ;
2192-* JMP PUSHBA
2183+* JMP PUSHD0
21932184 *
21942185 * ======>> 45 <<
21952186 * ( n adr --- )
@@ -2206,7 +2197,7 @@ STORE FDB *+NATWID
22062197 * LDX 0,X get address
22072198 * LEAS 1,S ;
22082199 * LEAS 1,S ;
2209-* JMP PULABX
2200+* JMP POPD0X
22102201 *
22112202 * ======>> 46 <<
22122203 * ( b adr --- )
@@ -2313,7 +2304,7 @@ DOCON LDD NATWID,X ; Get the first natural width word of the parameter field.
23132304 * DOCON LDX W
23142305 * LDA 2,X
23152306 * LDB 3,X A & B now contain the constant
2316-* JMP PUSHBA
2307+* JMP PUSHD0
23172308 *
23182309 * Not in model, needed for abstraction:
23192310 * ( --- NATWID )
@@ -2344,7 +2335,7 @@ NATP FDB *+NATWID
23442335 * TSX
23452336 * ADDB 1,X
23462337 * ADCA ,X
2347-* JMP STABX
2338+* JMP STD0X
23482339 *
23492340 * ======>> 50 <<
23502341 * ( init --- )
@@ -2373,7 +2364,7 @@ DOVAR LEAX NATWID,X ; Point to the first natural width word of the parameters.
23732364 * LDB W+1
23742365 * ADDB #2
23752366 * ADCA #0 A,B now contain the address of the variable
2376-* JMP PUSHBA
2367+* JMP PUSHD0
23772368 *
23782369 * ======>> 51 <<
23792370 * ( ub --- )
@@ -2420,7 +2411,7 @@ DOUSER TFR DP,A ; Make a pointer to the direct page.
24202411 * LDB 3,X
24212412 * ADDB UP+1 add to users base address
24222413 * ADCA UP
2423-* JMP PUSHBA push address of user's variable
2414+* JMP PUSHD0 push address of user's variable
24242415 *
24252416 * ######>> screen 35 <<
24262417 * ======>> 52 <<
@@ -2951,7 +2942,7 @@ FALSE LDD #0
29512942 * LESST LDB #1
29522943 * LESSX CLRA ;
29532944 * LEAS 1,S ;
2954-* JMP PUSHBA
2945+* JMP PUSHD0
29552946 *
29562947 * ======>> 92 <<
29572948 * ( n1 n2 --- n1>n2 )
@@ -3074,7 +3065,7 @@ SIGNUP SEX ; Couldn't they have called SignEXtend EXT instead?
30743065 * BPL SIGNUP
30753066 * NEGB
30763067 * COMA
3077-* SIGNUP JMP STABX
3068+* SIGNUP JMP STD0X
30783069 *
30793070 * ======>> 98 <<
30803071 * ( adr1 direction --- adr2 )
@@ -3097,7 +3088,7 @@ SIGNUP SEX ; Couldn't they have called SignEXtend EXT instead?
30973088 * LBRA NEXT
30983089 * Doing this in 6809 just because it can be done was getting too greedy.
30993090 TRAV FDB DOCOL,SWAP
3100-TRAV2 FDB OVER,PLUS,LIT8
3091+TRAV2 FDB OVER,PLUS,LIT16
31013092 FCB $7F
31023093 FDB OVER,CAT,LESS,ZBRAN
31033094 FDB TRAV2-*-NATWID
@@ -3145,7 +3136,7 @@ LATEST FDB DOCOL,CURENT,AT,AT
31453136 FCC 'LF' ; 'LFA'
31463137 FCB $C1
31473138 FDB LATEST-9
3148-LFA FDB DOCOL,LIT8
3139+LFA FDB DOCOL,LIT16
31493140 * FCB 4
31503141 FCB 2*NATWID
31513142 FDB SUB
@@ -3169,7 +3160,7 @@ CFA FDB DOCOL,NATWC,SUB
31693160 FCC 'NF' ; 'NFA'
31703161 FCB $C1
31713162 FDB CFA-6
3172-NFA FDB DOCOL,LIT8
3163+NFA FDB DOCOL,LIT16
31733164 * FCB 5
31743165 FCB NATWID*2+1
31753166 FDB SUB,ONE,MINUS,TRAV
@@ -3182,7 +3173,7 @@ NFA FDB DOCOL,LIT8
31823173 FCC 'PF' ; 'PFA'
31833174 FCB $C1
31843175 FDB NFA-6
3185-PFA FDB DOCOL,ONE,TRAV,LIT8
3176+PFA FDB DOCOL,ONE,TRAV,LIT16
31863177 * FCB 5
31873178 FCB NATWID*2+1
31883179 FDB PLUS
@@ -3239,7 +3230,7 @@ QERR3 FDB SEMIS
32393230 FCC '?COM' ; '?COMP'
32403231 FCB $D0
32413232 FDB QERR-9
3242-QCOMP FDB DOCOL,STATE,AT,ZEQU,LIT8
3233+QCOMP FDB DOCOL,STATE,AT,ZEQU,LIT16
32433234 FCB $11
32443235 FDB QERR
32453236 FDB SEMIS
@@ -3254,7 +3245,7 @@ QCOMP FDB DOCOL,STATE,AT,ZEQU,LIT8
32543245 FCC '?EXE' ; '?EXEC'
32553246 FCB $C3
32563247 FDB QCOMP-8
3257-QEXEC FDB DOCOL,STATE,AT,LIT8
3248+QEXEC FDB DOCOL,STATE,AT,LIT16
32583249 FCB $12
32593250 FDB QERR
32603251 FDB SEMIS
@@ -3268,7 +3259,7 @@ QEXEC FDB DOCOL,STATE,AT,LIT8
32683259 FCC '?PAIR' ; '?PAIRS'
32693260 FCB $D3
32703261 FDB QEXEC-8
3271-QPAIRS FDB DOCOL,SUB,LIT8
3262+QPAIRS FDB DOCOL,SUB,LIT16
32723263 FCB $13
32733264 FDB QERR
32743265 FDB SEMIS
@@ -3284,7 +3275,7 @@ QPAIRS FDB DOCOL,SUB,LIT8
32843275 FCC '?CS' ; '?CSP'
32853276 FCB $D0
32863277 FDB QPAIRS-9
3287-QCSP FDB DOCOL,SPAT,CSP,AT,SUB,LIT8
3278+QCSP FDB DOCOL,SPAT,CSP,AT,SUB,LIT16
32883279 FCB $14
32893280 FDB QERR
32903281 FDB SEMIS
@@ -3299,7 +3290,7 @@ QCSP FDB DOCOL,SPAT,CSP,AT,SUB,LIT8
32993290 FCC '?LOADIN' ; '?LOADING'
33003291 FCB $C7
33013292 FDB QCSP-7
3302-QLOAD FDB DOCOL,BLK,AT,ZEQU,LIT8
3293+QLOAD FDB DOCOL,BLK,AT,ZEQU,LIT16
33033294 FCB $16
33043295 FDB QERR
33053296 FDB SEMIS
@@ -3334,7 +3325,7 @@ STCOMP EQU $C0
33343325 FCB $81 ]
33353326 FCB $DD
33363327 FDB LBRAK-4
3337-RBRAK FDB DOCOL,LIT8
3328+RBRAK FDB DOCOL,LIT16
33383329 FCB STCOMP
33393330 FDB STATE,STORE
33403331 FDB SEMIS
@@ -3347,7 +3338,7 @@ RBRAK FDB DOCOL,LIT8
33473338 FCC 'SMUDG' ; 'SMUDGE'
33483339 FCB $C5
33493340 FDB RBRAK-4
3350-SMUDGE FDB DOCOL,LATEST,LIT8
3341+SMUDGE FDB DOCOL,LATEST,LIT16
33513342 FCB FSMUDG
33523343 FDB TOGGLE
33533344 FDB SEMIS
@@ -3360,7 +3351,7 @@ SMUDGE FDB DOCOL,LATEST,LIT8
33603351 FCB $D8
33613352 FDB SMUDGE-9
33623353 HEX FDB DOCOL
3363- FDB LIT8
3354+ FDB LIT16
33643355 FCB 16 ; decimal sixteen
33653356 FDB BASE,STORE
33663357 FDB SEMIS
@@ -3373,7 +3364,7 @@ HEX FDB DOCOL
33733364 FCB $CC
33743365 FDB HEX-6
33753366 DEC FDB DOCOL
3376- FDB LIT8
3367+ FDB LIT16
33773368 FCB 10 ; decimal ten
33783369 FDB BASE,STORE
33793370 FDB SEMIS
@@ -3615,7 +3606,7 @@ PDOTQ FDB DOCOL,R,COUNT,DUP,ONEP ; IP/Y is post-inc.
36153606 FCB $A2
36163607 FDB PDOTQ-7
36173608 DOTQ FDB DOCOL
3618- FDB LIT8
3609+ FDB LIT16
36193610 FCB $22 ascii quote
36203611 FDB STATE,AT,ZBRAN
36213612 FDB DOTQ1-*-NATWID
@@ -3638,7 +3629,7 @@ DOTQ2 FDB SEMIS
36383629 FCC '?STAC' ; '?STACK'
36393630 FCB $CB
36403631 FDB DOTQ-5
3641-QSTACK FDB DOCOL,LIT8
3632+QSTACK FDB DOCOL,LIT16
36423633 * FCB $12
36433634 FCB SINIT-ORIG
36443635 * But why use that instead of XSPZER (S0)?
@@ -3652,7 +3643,7 @@ QSTACK FDB DOCOL,LIT8
36523643 QSTAC2 FDB SPAT
36533644 * Here, we compare with a value at least 128
36543645 * higher than dict. ptr. (DICTPT)
3655-* FDB HERE,LIT8
3646+* FDB HERE,LIT16
36563647 * FCB $80 ; This is a rough check anyway, leave it as is.
36573648 * But shouldn't it be the terminal width?
36583649 FDB HERE,COLUMS,AT
@@ -3670,7 +3661,7 @@ QSTAC3 FDB SEMIS
36703661 * FCC 4,?FREE
36713662 * FCB $C5
36723663 * FDB QSTACK-9
3673-*QFREE FDB DOCOL,SPAT,HERE,LIT8
3664+*QFREE FDB DOCOL,SPAT,HERE,LIT16
36743665 * FCB $80
36753666 * FDB PLUS,LESS,TWO,QERR,SEMIS ; This TWO is not NATWID!
36763667 *
@@ -3687,19 +3678,19 @@ QSTAC3 FDB SEMIS
36873678 FCB $D4
36883679 FDB QSTACK-9
36893680 EXPECT FDB DOCOL,OVER,PLUS,OVER,XDO ; brace the buffer area
3690-* EXPEC2 FDB KEY,DUP,LIT8
3681+* EXPEC2 FDB KEY,DUP,LIT16
36913682 EXPEC2 FDB KEY
36923683 * FDB LIT,$1C,SHOTOS ; DBG
3693- FDB DUP,LIT8
3684+ FDB DUP,LIT16
36943685 FCB BACKSP-ORIG
36953686 FDB PORIG,AT,EQUAL,ZBRAN ; check for backspacing
36963687 FDB EXPEC3-*-NATWID
3697- FDB DROP,LIT8
3688+ FDB DROP,LIT16
36983689 FCB 8 ( backspace character to emit )
36993690 FDB OVER,I,EQUAL,DUP,FROMR,TWO,SUB,PLUS ; back I up TWO characters
37003691 FDB TOR,SUB,BRAN
37013692 FDB EXPEC6-*-NATWID
3702-EXPEC3 FDB DUP,LIT8
3693+EXPEC3 FDB DUP,LIT16
37033694 FCB $D ( carriage return )
37043695 FDB EQUAL,ZBRAN
37053696 FDB EXPEC4-*-NATWID
@@ -3799,7 +3790,7 @@ HOLD FDB DOCOL,LIT,$FFFF,HLD,PSTORE,HLD,AT,CSTORE
37993790 FCC 'PA' ; 'PAD'
38003791 FCB $C4
38013792 FDB HOLD-7
3802-PAD FDB DOCOL,HERE,LIT8
3793+PAD FDB DOCOL,HERE,LIT16
38033794 FCB $44
38043795 FDB PLUS
38053796 FDB SEMIS
@@ -3822,7 +3813,7 @@ WORD FDB DOCOL,BLK,AT,ZBRAN
38223813 FDB BLK,AT,BLOCK,BRAN
38233814 FDB WORD3-*-NATWID
38243815 WORD2 FDB TIB,AT
3825-WORD3 FDB IN,AT,PLUS,SWAP,ENCLOS,HERE,LIT8
3816+WORD3 FDB IN,AT,PLUS,SWAP,ENCLOS,HERE,LIT16
38263817 FCB 34
38273818 FDB BLANKS,IN,PSTORE,OVER,SUB,TOR,R,HERE
38283819 FDB CSTORE,PLUS,HERE,ONEP,FROMR,CMOVE
@@ -3865,13 +3856,13 @@ PNUMB4 FDB FROMR
38653856 FCC 'NUMBE' ; 'NUMBER'
38663857 FCB $D2
38673858 FDB PNUMB-11
3868-NUMB FDB DOCOL,ZERO,ZERO,ROT,DUP,ONEP,CAT,LIT8
3859+NUMB FDB DOCOL,ZERO,ZERO,ROT,DUP,ONEP,CAT,LIT16
38693860 FCC "-" minus sign
38703861 FDB EQUAL,DUP,TOR,PLUS,LIT,$FFFF
38713862 NUMB1 FDB DPL,STORE,PNUMB,DUP,CAT,BL,SUB
38723863 FDB ZBRAN
38733864 FDB NUMB2-*-NATWID
3874- FDB DUP,CAT,LIT8
3865+ FDB DUP,CAT,LIT16
38753866 FCC "."
38763867 FDB SUB,ZERO,QERR,ZERO,BRAN
38773868 FDB NUMB1-*-NATWID
@@ -3969,15 +3960,15 @@ IDFLAT FDB *+NATWID
39693960 FCC 'ID' ; 'ID.'
39703961 FCB $AE
39713962 FDB IDFLAT-9
3972-IDDOT FDB DOCOL,PAD,LIT8
3963+IDDOT FDB DOCOL,PAD,LIT16
39733964 FCB 32
3974- FDB LIT8
3965+ FDB LIT16
39753966 FCB $5F ( underline )
39763967 FDB FILL,DUP,PFA,LFA,OVER,SUB,PAD
3977-* FDB SWAP,CMOVE,PAD,COUNT,LIT8
3968+* FDB SWAP,CMOVE,PAD,COUNT,LIT16
39783969 FDB SWAP,CMOVE,PAD
39793970 FDB IDFLAT
3980- FDB COUNT,LIT8
3971+ FDB COUNT,LIT16
39813972 FCB 31
39823973 FDB AND,TYPE,SPACE
39833974 FDB SEMIS
@@ -4001,13 +3992,13 @@ CREATE FDB DOCOL,DFIND,ZBRAN
40013992 FCB 8
40023993 FCB 7 ( bel )
40033994 FCC "redef: "
4004- FDB NFA,IDDOT,LIT8
3995+ FDB NFA,IDDOT,LIT16
40053996 FCB 4
40063997 FDB MESS,SPACE
40073998 CREAT2 FDB HERE,DUP,CAT,WIDTH,AT,MIN
4008- FDB ONEP,ALLOT,DUP,LIT8
3999+ FDB ONEP,ALLOT,DUP,LIT16
40094000 FCB ($80|FSMUDG) ; Bracket the name.
4010- FDB TOGGLE,HERE,ONE,SUB,LIT8
4001+ FDB TOGGLE,HERE,ONE,SUB,LIT16
40114002 FCB $80
40124003 FDB TOGGLE,LATEST,COMMA,CURENT,AT,STORE
40134004 * FDB HERE,TWOP,COMMA
@@ -4097,7 +4088,7 @@ INTER7 FDB QSTACK,BRAN
40974088 FCC 'IMMEDIAT' ; 'IMMEDIATE'
40984089 FCB $C5
40994090 FDB INTERP-12
4100-IMMED FDB DOCOL,LATEST,LIT8
4091+IMMED FDB DOCOL,LATEST,LIT16
41014092 FCB FIMMED
41024093 FDB TOGGLE
41034094 FDB SEMIS
@@ -4143,7 +4134,7 @@ DEFIN FDB DOCOL,CONTXT,AT,CURENT,STORE
41434134 FCB $C1 immediate (
41444135 FCB $A8
41454136 FDB DEFIN-14
4146-PAREN FDB DOCOL,LIT8
4137+PAREN FDB DOCOL,LIT16
41474138 FCC ")"
41484139 FDB WORD
41494140 FDB SEMIS
@@ -4524,7 +4515,7 @@ PREV FDB DOCON
45244515 FCC '+BU' ; '+BUF'
45254516 FCB $C6
45264517 FDB PREV-7
4527-* PBUF FDB DOCOL,LIT8
4518+* PBUF FDB DOCOL,LIT16
45284519 * FCB $84 ; This was a hard-wiring bug.
45294520 PBUF FDB DOCOL,BBUF,BCTL,PLUS ; Size of the buffer record.
45304521 * FDB PLUS,DUP,LIMIT,EQUAL,ZBRAN
@@ -4583,7 +4574,7 @@ KILBUF FDB *+NATWID ; DOCOL,UPDBIT,ONE,SUB,SWAP,STORE
45834574 FCC 'KILL-BUFFER' ; 'KILL-BUFFERS'
45844575 FCB $D3
45854576 FDB KILBUF-14
4586-KLBFS FDB DOCOL,FIRST,LIT8
4577+KLBFS FDB DOCOL,FIRST,LIT16
45874578 FCB 4 ; Want to make sure it's only four.
45884579 FDB ZERO,XDO ; It would be "cleaner" to let +BUF control the loop.
45894580 FDB DUP,KILBUF,PBUF,DROP,XLOOP
@@ -4712,9 +4703,9 @@ BLOCK5 FDB FROMR,DROP,NATP
47124703 FCC '(LINE' ; '(LINE)'
47134704 FCB $A9
47144705 FDB BLOCK-8
4715-PLINE FDB DOCOL,TOR,LIT8
4706+PLINE FDB DOCOL,TOR,LIT16
47164707 FCB $40
4717- FDB BBUF,SSMOD,FROMR,BSCR,STAR,PLUS,BLOCK,PLUS,LIT8
4708+ FDB BBUF,SSMOD,FROMR,BSCR,STAR,PLUS,BLOCK,PLUS,LIT16
47184709 FCB $40
47194710 FDB SEMIS
47204711 *
@@ -4742,7 +4733,7 @@ MESS FDB DOCOL,WARN,AT,ZBRAN
47424733 FDB MESS3-*-NATWID
47434734 FDB DDUP,ZBRAN
47444735 FDB MESS3-*-NATWID
4745- FDB LIT8
4736+ FDB LIT16
47464737 FCB 4
47474738 FDB OFSET,AT,BSCR,SLASH,SUB,DLINE,BRAN
47484739 FDB MESS4-*-NATWID
@@ -5050,11 +5041,11 @@ TICK FDB DOCOL,DFIND,ZEQU,ZERO,QERR,DROP,LITER
50505041 FCC 'FORGE' ; 'FORGET'
50515042 FCB $D4
50525043 FDB TICK-4
5053-FORGET FDB DOCOL,CURENT,AT,CONTXT,AT,SUB,LIT8
5044+FORGET FDB DOCOL,CURENT,AT,CONTXT,AT,SUB,LIT16
50545045 FCB $18
5055- FDB QERR,TICK,DUP,FENCE,AT,LESS,LIT8
5046+ FDB QERR,TICK,DUP,FENCE,AT,LESS,LIT16
50565047 FCB $15
5057- FDB QERR,DUP,ZERO,PORIG,GREAT,LIT8
5048+ FDB QERR,DUP,ZERO,PORIG,GREAT,LIT16
50585049 FCB $15
50595050 FDB QERR,DUP,NFA,DICTPT,STORE,LFA,AT,CONTXT,AT,STORE
50605051 FDB SEMIS
@@ -5326,7 +5317,7 @@ EDIGS FDB DOCOL,DROP,DROP,HLD,AT,PAD,OVER,SUB
53265317 FDB EDIGS-5
53275318 SIGN FDB DOCOL,ROT,ZLESS,ZBRAN
53285319 FDB SIGN2-*-NATWID
5329- FDB LIT8
5320+ FDB LIT16
53305321 FCC "-"
53315322 FDB HOLD
53325323 SIGN2 FDB SEMIS
@@ -5338,14 +5329,14 @@ SIGN2 FDB SEMIS
53385329 FCB $81 #
53395330 FCB $A3
53405331 FDB SIGN-7
5341-DIG FDB DOCOL,BASE,AT,MSMOD,ROT,LIT8
5332+DIG FDB DOCOL,BASE,AT,MSMOD,ROT,LIT16
53425333 FCB 9
53435334 FDB OVER,LESS,ZBRAN
53445335 FDB DIG2-*-NATWID
5345- FDB LIT8
5336+ FDB LIT16
53465337 FCB 7
53475338 FDB PLUS
5348-DIG2 FDB LIT8
5339+DIG2 FDB LIT16
53495340 FCC "0" ascii zero
53505341 FDB PLUS,HOLD
53515342 FDB SEMIS
@@ -5434,7 +5425,7 @@ QUEST FDB DOCOL,AT,DOT
54345425 LIST FDB DOCOL,DEC,CR,DUP,SCR,STORE,PDOTQ
54355426 FCB 6
54365427 FCC "SCR # "
5437- FDB DOT,LIT8
5428+ FDB DOT,LIT16
54385429 FCB $10
54395430 FDB ZERO,XDO
54405431 LIST2 FDB CR,I,THREE
@@ -5479,7 +5470,7 @@ TRIAD2 FDB CR,I
54795470 FDB LEAVE
54805471 TRIAD3 FDB XLOOP
54815472 FDB TRIAD2-*-NATWID
5482- FDB CR,LIT8
5473+ FDB CR,LIT16
54835474 FCB $0F
54845475 FDB MESS,CR
54855476 FDB SEMIS
@@ -5493,10 +5484,10 @@ TRIAD3 FDB XLOOP
54935484 FCC 'VLIS' ; 'VLIST'
54945485 FCB $D4
54955486 FDB TRIAD-8
5496-VLIST FDB DOCOL,LIT8
5487+VLIST FDB DOCOL,LIT16
54975488 FCB $80
54985489 FDB OUT,STORE,CONTXT,AT,AT
5499-VLIST1 FDB OUT,AT,COLUMS,AT,LIT8
5490+VLIST1 FDB OUT,AT,COLUMS,AT,LIT16
55005491 FCB 32
55015492 FDB SUB,GREAT,ZBRAN
55025493 FDB VLIST2-*-NATWID
@@ -5517,7 +5508,7 @@ VLIST2 FDB DUP,IDDOT,SPACE,SPACE,PFA,LFA,AT
55175508 BEMIT FDB DOCOL
55185509 FDB DUP,BL,LESS,ZBRAN
55195510 FDB BEMITO-*-NATWID
5520- FDB DROP,LIT8
5511+ FDB DROP,LIT16
55215512 FCB $2e ; '.'
55225513 BEMITO FDB EMIT
55235514 FDB SEMIS
@@ -5539,13 +5530,13 @@ XDOTR FDB DOCOL
55395530 FCB $C5 ; 'E'
55405531 FDB XDOTR-6
55415532 BLINE FDB DOCOL
5542- FDB DUP,LIT8
5533+ FDB DUP,LIT16
55435534 FCB 4
55445535 FDB PLUS,OVER,XDO
55455536 BLINEX FDB I,CAT,THREE,XDOTR,XLOOP
55465537 FDB BLINEX-*-NATWID
55475538 FDB SPACE,SPACE
5548- FDB DUP,LIT8
5539+ FDB DUP,LIT16
55495540 FCB 4
55505541 FDB PLUS,SWAP,XDO
55515542 BLINEC FDB I,CAT,BEMIT,XLOOP
@@ -5560,12 +5551,12 @@ BLINEC FDB I,CAT,BEMIT,XLOOP
55605551 FDB BLINE-8
55615552 BDUMP FDB DOCOL
55625553 FDB CR,XDO
5563-BDUMPL FDB I,LIT8
5554+BDUMPL FDB I,LIT16
55645555 FCB 4
5565- FDB XDOTR,LIT8
5556+ FDB XDOTR,LIT16
55665557 FCB $3A
55675558 FDB EMIT,SPACE
5568- FDB I,BLINE,CR,LIT8
5559+ FDB I,BLINE,CR,LIT16
55695560 FCB 4
55705561 FDB XPLOOP
55715562 FDB BDUMPL-*-NATWID
Afficher sur ancien navigateur de dépôt.