S-C ProDOS Interface 3.0 -- SCI/SC.TABLES
1000 *SAVE SC.TABLES
1010 *--------------------------------
1020 CN. .SE 1
1030 .MA CMD
1040 CN. .SE CN.+1
1050 CN.]2 .EQ CN.
1060 .AT /]2]3/
1070 .DA ]2
1080 .HS ]1
1090 .EM
1100 *--------------------------------
1110 COMMAND.TABLE
1120 .AT /-/
1130 .DA DASH
1140 .HS 0104
1150 >CMD 05F4,BLOAD
1160 >CMD 01F4,BRUN
1170 >CMD 0DF4,BSAVE
1180 >CMD 0000,BYE
1190 >CMD 9504,CATALOG
1200 >CMD 9504,CAT
1210 >CMD 0100,CLOSE
1220 >CMD 0D84,CREATE
1230 >CMD 0104,DELETE
1240 >CMD 0107,EXEC
1250 >CMD 4080,IN,#
1260 >CMD 0504,LOAD
1270 >CMD 0104,LOCK
1280 >CMD 0000,NOPREFIX
1290 >CMD 0000,NOW
1300 >CMD 0000,ONLINE
1310 >CMD 2D14,OPEN
1320 >CMD 4080,PR,#
1330 >CMD 9104,PREFIX
1340 >CMD 0304,RENAME
1350 >CMD 0D04,SAVE
1360 >CMD 0104,UNLOCK
1370 >CMD 1104,VERIFY
1380 >CMD 2147,WRITE
1390 .HS 00
1400 *--------------------------------
1410 * PARAMETER NAME TABLE
1420 *--------------------------------
1430 PARM.NAMES
1440 .AS /ABELSDFRV/
1450 NO.PARM.NAMES .EQ *-PARM.NAMES
1460 *--------------------------------
1470 * BIT MASK FOR PARAMETERS IN PERMISSION BITS
1480 *--------------------------------
1490 * A B E L S D F R V @
1500 PARM.MASKS
1510 .HS 80.40.20.10.04.04.02.01.00
1520 *--------------------------------
1530 * XXXXXXYY where yy+1= # of bytes
1540 * xxxxxx= offset from VAL.A
1550 * of last byte
1560 *--------------------------------
1570 .MA PAR
1580 .DA #VAL.]1-VAL.A+]2-1*4+]2-1
1590 .EM
1600 *--------------------------------
1610 PARM.VARIABLES
1620 >PAR A,2
1630 >PAR B,3
1640 >PAR E,2
1650 >PAR L,2
1660 >PAR S,1
1670 >PAR D,1
1680 >PAR F,2
1690 >PAR R,2
1700 >PAR V,1
1710 *--------------------------------
1720 * FILE TYPE CODES
1730 *--------------------------------
1740 .MA FT
1750 .AS -/]1/
1760 .HS ]2
1770 .EM
1780 *--------------------------------
1790 FILE.TYPES
1800 >FT TXT,04
1810 >FT BIN,06
1820 >FT DIR,0F
1830 >FT ADB,19
1840 >FT AWP,1A
1850 >FT ASP,1B
1860 >FT PAS,EF
1870 >FT CMD,F0
1880 >FT S-C,FA (NORMALLY "INT")
1890 >FT IVR,FB
1900 >FT BAS,FC
1910 >FT VAR,FD
1920 >FT REL,FE
1930 >FT SYS,FF
1940 LAST.FILE.TYPE .EQ *-FILE.TYPES-1
1950 *--------------------------------
1960 * NAMES OF THE MONTHS
1970 *--------------------------------
1980 MONTH.NAMES
1990 .AS -/JFMAMJJASOND/
2000 .AS -/AEAPAUUUECOE/
2010 .AS -/NBRRYNLGPTVC/
2020 *--------------------------------
2030 NO.DATE.MSG
2040 .AS -//
2050 *--------------------------------
2060 * MLI ERROR CODES
2070 *--------------------------------
2080 MLI.ERROR.CODES
2090 .HS 282B4041424344454647
2100 .HS 48494B4C4D4E505356
2110 *--------------------------------
2120 * EQUIVALENT BI ERROR CODES
2130 *--------------------------------
2140 BI.ERROR.CODES
2150 .HS 0304100C0C1206068613 (86 IS A TRICK)
2160 .HS 09110D05020A140B0C08
2170 *--------------------------------
2180 MESSAGES
2190 .AC 0 INIT NYBBLE.FLAG
2200 .AC 1"ACDEFILNOPRST %"
2210 .AC 2"BGHKMUVWXY/():."
2220 .AC 3"QZ-4567890123@&"
2230 Q.BLOCKS.ABOVE .EQ 0
2240 .AC / BLOCKS SHOWN ABOVE:6%/
2250 *--------------------------------
2260 Q.DIRHDR .EQ 1
2270 .AC /TYPE NAME2BLOCKS MODIFIED9CREATED9ENDFILE AUXTYPE%/
2280 *--------------------------------
2290 .AC /RANGE ERROR%/
2300 .AC /NO DEVICE CONNECTED%/
2310 .AC /WRITE PROTECTED%/
2320 .AC /END OF DATA%/
2330 .AC /PATH NOT FOUND%/
2340 *--------------------------------
2350 Q.BLOCKS .EQ 7
2360 .AC / VOLUME BLOCKS USED:8FREE:8TOTAL:5%/
2370 *--------------------------------
2380 .AC "I/O ERROR%"
2390 .AC /DISK FULL%/
2400 .AC /FILE LOCKED%/
2410 .AC /INVALID PARAMETER%/
2420 .AC /NO BUFFERS AVAILABLE%/
2430 .AC /FILE TYPE MISMATCH%/
2440 .AC /PROGRAM TOO LARGE%/
2450 .AC /NOT DIRECT COMMAND%/
2460 .AC /SYNTAX ERROR%/
2470 .AC /DIRECTORY FULL%/
2480 .AC /FILE NOT OPEN%/
2490 .AC /DUPLICATE FILE NAME%/
2500 .AC /FILE BUSY%/
2510 .AC /FILE(S) STILL OPEN%/
2520 *--------------------------------
2530 .AC "%"
2540 ZZ.MESSAGES .EQ *-MESSAGES
2550 *--------------------------------
2560 FIRST.TABLE .EQ *
2570 .HS 00
2580 .AS -"ACDEFILNOPRST "
2590 .HS 8D
2600 SECOND.TABLE .EQ *
2610 .HS 00
2620 .AS -"BGHKMUVWXY/():."
2630 THIRD.TABLE .EQ *
2640 .AS -"JQZ-"
2650 .HS 05.06.07.08.09.0A.0B.0C.0D.0E.0F.10 (BLANK COUNTS+1)
2660 *--------------------------------