lwt1@aplvax.UUCP (06/26/84)
There is a typo in my release of VAX FORTH. Line 357 of prim.as reads: movw *$size,*$index It should read: movw *$size,*$indx For some reason the assembler does not make the file executable even though it reports no errors. 'chmod' it to be executable. VAX FORTH was developed under 4.1BSD despite what the README file says. The a.out formats may be different between 4.1 and 4.2. The code that generates the a.out header is in META1. The following is the map that should be generated from the metacompilation: VAX FORTH version 1.0 FIND isn't unique HERE isn't unique ALLOT isn't unique C@ isn't unique C! isn't unique @ isn't unique ! isn't unique , isn't unique HEADER isn't unique ' isn't unique OK OK OK 3 OK OK OK 8 rsp0 Label C in Label E initvocab Label 10 dp Label 412 inbuf Label (:) isn't unique [Meta] 492 (:) 498 NEXT Label 4A8 (;) 4BD (VARIABLE) 4CC (CONSTANT) 4DB (DOES>) 4F0 (LITERAL) 501 BRANCH 512 ?BRANCH 527 EXECUTE 539 (DO) 558 (LOOP) 570 (+LOOP) 589 I 59C J 5B0 (LEAVE) 5BC _READ Label 5C5 _WRITE Label 5CF _LSEEK Label 5D8 _CREAT Label 5E2 _OPEN Label 5EC _CLOSE Label 5F1 _EXIT Label 5F6 _FORK Label 606 _SIGNAL Label 610 _WAIT Label 624 _EXECVE Label 62A vector Label 644 STATUS Label 648 NAME Label 652 0ARG Label 656 1ARG Label 65A ARGV Label 672 SHELL 6D0 SYSTEM 6E4 BLOCK Label AE4 SIZE Label AE6 INDEX Label AE8 FD Label AEA FILEPOS Label B26 GETC Label B93 FEXPECT BD2 READ C04 WRITE C25 SEEK C5F CREAT C82 OPEN CA5 CLOSE CBB TERMINATE CD0 (FIND) D06 WORD D60 ! D74 !SP D85 + D96 +! DAA - DBB -1 DCC 0 DDC 0< DF6 0= E10 1 E21 1+ E31 1- E41 2 E52 2+ E63 2- E74 2* E8C 2/ EA5 < EC0 = EDB > EF6 >R F07 @ F1B @SP F2F AND F43 C! F59 C@ F6D CMOVE F90 D+ FAE DNEGATE FC7 D< FEB DROP FFC DUP 100D M* 1029 M/ 1063 NEGATE 1074 NOT 1085 OR 1096 OVER 10A8 R> 10B9 R@ 10CA RESET 10DD ROT 10FB ROTATE 1120 SWAP 1139 U< 1154 U> 116F UM* 118D UM/ 11B2 XOR OK OK 11C3 TIB 11CF SP0 11DB DP 11E7 >IN 11F3 INITVOCAB 11FF WRN 120B STATE 1217 BASE 1223 CURRENT 122F CONTXT 123B CLUE 1247 STDIN 1253 STDOUT 125F EOL 126B TRUE 1277 FALSE 1283 ?DUP 1297 -ROT 12A7 * 12B7 2DUP 12C7 S->D 12D7 +- 12EB D+- 12FF ABS 130F DABS 131F 2DROP 132F 0> 133F MAX 1357 MIN 136F <> 137F UM*M 139D M/MMOD 13BB UM/MOD 13CB /MOD 13DF / 13F1 MOD 1401 */MOD 1415 */ 1427 DEPTH 143D PICK 1453 FILL 147D CMOVE> 14BB ROLL 14DD TOGGLE 14F3 2! 1509 2@ 151F HEX 1533 DECIMAL 1547 OCTAL 155B HERE 156B PAD 157F LATEST 1591 ALLOT 15A1 , 15B5 IMMEDIATE 15C9 SMUDGE 15DD COMPILE 15F7 <MARK 1605 <RESOLVE 1613 >MARK 1625 >RESOLVE 1637 >>RESOLVE IF isn't unique [Meta] 1659 IF THEN isn't unique [Meta] 166B THEN ELSE isn't unique [Meta] 1679 ELSE BEGIN isn't unique [Meta] 168F BEGIN UNTIL isn't unique [Meta] 169D UNTIL AGAIN isn't unique [Meta] 16AF AGAIN WHILE isn't unique [Meta] 16C1 WHILE REPEAT isn't unique [Meta] 16D3 REPEAT 16E9 SEL 16F7 << 1707 => 171D ==> 1737 >> 1751 OTHERWISE 1761 ENDSEL DO isn't unique [Meta] 1773 DO LOOP isn't unique [Meta] 178F LOOP +LOOP isn't unique [Meta] 17AB +LOOP LEAVE isn't unique [Meta] 17C7 LEAVE 17E3 EXIT [ isn't unique [Meta] 17F3 [ 1805 ] ( isn't unique [Meta] 1817 ( 182B OUTTABLE 183D FOREACHOUTPUT 1853 OUTPUT 187F SILENT 18A9 TYPE 18D5 EMIT 18E9 CR 18F9 FQUERY 1913 COUNT 1927 ,WORD 193B (.") 1953 ." 1969 SPACE 197B SPACES 199B -TRAILING 19D3 STRING 19F7 " 1A0B ("") 1A23 "" 1A39 CFIELD 1A4B NFIELD 1A5D -IMM 1A7F FIND 1ABD ' 1AE7 HEADER 1B2B : ; isn't unique [Meta] 1B49 ; 1B61 VARIABLE 1B77 CONSTANT 1B8B 2VARIABLE 1B9D DOES> 1BB3 CREATE 1BCB VOCABULARY 1BEB DEFINITIONS 1BFF FORTH 1C11 HLD 1C1D HOLD 1C35 <# 1C47 #> 1C5F SIGN 1C77 # 1CA5 #S 1CBD D.R 1CE5 ZEROES 1D09 D.LZ 1D31 D. 1D43 .R 1D57 . 1D67 U.R 1D79 U.LZ 1D8B U. 1D9B ? 1DAB U? 1DBB [COMPILE] 1DCB ['] 1DDF LITERAL 1DF1 .( 1E09 DUMP 1EAF FORGET 1EFC DIGIT 1F56 CONVERT 1F88 NUMBER 1FCE ?STACK 1FE0 CHUCKBUF 200E ENDINTERP 2020 INTERPRET 20A8 FLOAD 20EB QUIT 2123 ABORT 2135 ABORT" OK OK -John Hayes Johns Hopkins University Applied Physics Lab ... seismo!umcp-cs!aplvax!lwt1