Compucolor.org – Virtual Media

Listing of file='LINT.C;01' on disk='vmedia/chip_9-sector.ccvf'

### Disk Sector 177 ###
00: 2f 2a 20 14 4c 49 4e 54 20 56 30 31 2e 30 30 20   /* .LINT V01.00
10: 12 2d 20 54 49 4e 59 43 20 50 52 4f 47 52 41 4d   .- TINYC PROGRAM
20: 20 53 59 4e 54 41 58 20 43 48 45 43 4b 45 52 0d    SYNTAX CHECKER.
30: 0a 2f 2a 20 4e 45 45 44 53 20 16 53 54 44 4c 49   ./* NEEDS .STDLI
40: 42 12 0d 0a 0d 0a 49 4e 54 20 4c 50 54 52 2c 4c   B.....INT LPTR,L
50: 45 56 45 4c 2c 53 50 2c 45 52 52 2c 45 52 52 4f   EVEL,SP,ERR,ERRO
60: 52 0d 0a 43 48 41 52 20 52 41 4e 4b 28 32 35 36   R..CHAR RANK(256
70: 29 2c 4d 41 54 28 34 30 29 2c 4c 49 4e 45 28 31   ),MAT(40),LINE(1
### Disk Sector 178 ###
00: 32 38 29 2c 53 54 41 43 4b 28 31 32 38 29 2c 46   28),STACK(128),F
10: 49 4c 45 4e 28 32 30 29 0d 0a 49 4e 54 20 55 4e   ILEN(20)..INT UN
20: 49 54 0d 0a 0d 0a 47 45 54 43 5b 49 4e 54 20 58   IT....GETC[INT X
30: 0d 0a 20 49 46 28 4c 49 4e 45 28 4c 50 54 52 29   .. IF(LINE(LPTR)
40: 3d 3d 30 29 0d 0a 20 20 5b 0d 0a 20 20 49 46 28   ==0)..  [..  IF(
50: 28 45 52 52 3d 46 52 45 41 44 28 4c 49 4e 45 2c   (ERR=FREAD(LINE,
60: 55 4e 49 54 29 29 3e 3d 30 29 20 4c 49 4e 45 28   UNIT))>=0) LINE(
70: 45 52 52 29 3d 30 0d 0a 20 20 20 45 4c 53 45 20   ERR)=0..   ELSE
### Disk Sector 179 ###
00: 4c 49 4e 45 28 30 29 3d 32 35 35 0d 0a 20 20 4c   LINE(0)=255..  L
10: 50 54 52 3d 30 0d 0a 20 20 5d 0d 0a 20 58 3d 4c   PTR=0..  ].. X=L
20: 49 4e 45 28 4c 50 54 52 29 0d 0a 20 57 48 49 4c   INE(LPTR).. WHIL
30: 45 28 58 3c 30 29 20 58 3d 58 2b 32 35 36 0d 0a   E(X<0) X=X+256..
40: 20 4c 50 54 52 3d 4c 50 54 52 2b 31 0d 0a 20 52    LPTR=LPTR+1.. R
50: 45 54 55 52 4e 20 58 0d 0a 20 5d 0d 0a 0d 0a 4e   ETURN X.. ]....N
60: 58 54 43 48 52 5b 49 4e 54 20 41 0d 0a 20 57 48   XTCHR[INT A.. WH
70: 49 4c 45 28 28 52 41 4e 4b 28 41 3d 47 45 54 43   ILE((RANK(A=GETC
### Disk Sector 180 ###
00: 28 29 29 29 3d 3d 30 29 4d 43 28 41 2c 31 29 0d   ()))==0)MC(A,1).
10: 0a 20 52 45 54 55 52 4e 20 41 0d 0a 20 5d 0d 0a   . RETURN A.. ]..
20: 0d 0a 50 4f 50 5b 0d 0a 20 52 45 54 55 52 4e 20   ..POP[.. RETURN
30: 53 54 41 43 4b 28 53 50 3d 53 50 2d 31 29 0d 0a   STACK(SP=SP-1)..
40: 20 5d 0d 0a 0d 0a 50 55 53 48 20 43 48 41 52 20    ]....PUSH CHAR
50: 41 5b 0d 0a 20 53 54 41 43 4b 28 53 50 29 3d 41   A[.. STACK(SP)=A
60: 0d 0a 20 53 50 3d 53 50 2b 31 0d 0a 20 5d 0d 0a   .. SP=SP+1.. ]..
70: 0d 0a 54 4f 50 5b 0d 0a 20 52 45 54 55 52 4e 20   ..TOP[.. RETURN
### Disk Sector 181 ###
00: 53 54 41 43 4b 28 53 50 2d 31 29 0d 0a 20 5d 0d   STACK(SP-1).. ].
10: 0a 0d 0a 43 4f 4c 4f 52 20 49 4e 54 20 43 5b 0d   ...COLOR INT C[.
20: 0a 20 4c 45 56 45 4c 3d 4c 45 56 45 4c 2b 43 0d   . LEVEL=LEVEL+C.
30: 0a 20 50 55 54 43 48 41 52 28 31 37 2b 4c 45 56   . PUTCHAR(17+LEV
40: 45 4c 25 37 29 0d 0a 20 5d 0d 0a 0d 0a 53 45 54   EL%7).. ]....SET
50: 55 50 20 43 48 41 52 20 41 28 30 29 2c 42 28 30   UP CHAR A(0),B(0
60: 29 5b 0d 0a 20 57 48 49 4c 45 28 42 28 30 29 29   )[.. WHILE(B(0))
70: 5b 41 28 30 29 3d 42 28 30 29 2d 27 30 27 3b 41   [A(0)=B(0)-'0';A
### Disk Sector 182 ###
00: 3d 41 2b 31 3b 42 3d 42 2b 31 3b 5d 0d 0a 20 5d   =A+1;B=B+1;].. ]
10: 0d 0a 0d 0a 4d 41 49 4e 5b 4c 49 4e 54 5d 0d 0a   ....MAIN[LINT]..
20: 4c 49 4e 54 20 5b 0d 0a 49 4e 54 20 53 2c 43 0d   LINT [..INT S,C.
30: 0a 43 48 41 52 20 57 41 49 54 28 30 29 0d 0a 57   .CHAR WAIT(0)..W
40: 41 49 54 3d 33 33 32 37 39 0d 0a 55 4e 49 54 3d   AIT=33279..UNIT=
50: 35 0d 0a 52 41 4e 4b 28 39 31 29 3d 31 0d 0a 52   5..RANK(91)=1..R
60: 41 4e 4b 28 34 30 29 3d 32 0d 0a 52 41 4e 4b 28   ANK(40)=2..RANK(
70: 33 34 29 3d 33 0d 0a 52 41 4e 4b 28 33 39 29 3d   34)=3..RANK(39)=
### Disk Sector 183 ###
00: 34 0d 0a 52 41 4e 4b 28 34 31 29 3d 35 0d 0a 52   4..RANK(41)=5..R
10: 41 4e 4b 28 39 33 29 3d 36 0d 0a 52 41 4e 4b 28   ANK(93)=6..RANK(
20: 31 30 29 3d 37 0d 0a 52 41 4e 4b 28 32 35 35 29   10)=7..RANK(255)
30: 3d 38 0d 0a 53 45 54 55 50 28 4d 41 54 20 20 20   =8..SETUP(MAT
40: 2c 22 31 31 31 31 35 35 33 30 22 29 0d 0a 53 45   ,"11115530")..SE
50: 54 55 50 28 4d 41 54 2b 30 38 2c 22 31 31 31 31   TUP(MAT+08,"1111
60: 35 32 33 37 22 29 0d 0a 53 45 54 55 50 28 4d 41   5237")..SETUP(MA
70: 54 2b 31 36 2c 22 35 31 31 31 32 37 37 37 22 29   T+16,"51112777")
### Disk Sector 184 ###
00: 0d 0a 53 45 54 55 50 28 4d 41 54 2b 32 34 2c 22   ..SETUP(MAT+24,"
10: 31 31 32 33 36 36 36 36 22 29 0d 0a 53 45 54 55   11236666")..SETU
20: 50 28 4d 41 54 2b 33 32 2c 22 34 34 33 32 34 34   P(MAT+32,"443244
30: 36 36 22 29 0d 0a 57 48 49 4c 45 28 31 29 5b 0d   66")..WHILE(1)[.
40: 0a 20 50 4c 22 22 3b 50 53 22 13 4c 49 4e 54 3e   . PL"";PS".LINT>
50: 12 22 0d 0a 20 49 46 28 47 53 28 4c 49 4e 45 29   .".. IF(GS(LINE)
60: 3d 3d 30 29 20 52 45 54 55 52 4e 0d 0a 20 46 49   ==0) RETURN.. FI
70: 4c 45 4e 41 4d 45 28 4c 49 4e 45 2c 46 49 4c 45   LENAME(LINE,FILE
### Disk Sector 185 ###
00: 4e 29 0d 0a 20 45 52 52 4f 52 3d 30 0d 0a 20 49   N).. ERROR=0.. I
10: 46 28 28 45 52 52 3d 46 4f 50 45 4e 28 31 2c 46   F((ERR=FOPEN(1,F
20: 49 4c 45 4e 2c 30 2c 55 4e 49 54 29 29 3d 3d 30   ILEN,0,UNIT))==0
30: 29 0d 0a 20 20 5b 0d 0a 20 20 50 4c 22 22 0d 0a   )..  [..  PL""..
40: 20 20 4c 49 4e 45 28 4c 50 54 52 3d 30 29 3d 30     LINE(LPTR=0)=0
50: 0d 0a 20 20 4c 45 56 45 4c 3d 31 0d 0a 20 20 53   ..  LEVEL=1..  S
60: 50 3d 31 3b 50 55 53 48 28 30 29 0d 0a 20 20 43   P=1;PUSH(0)..  C
70: 4f 4c 4f 52 28 30 29 0d 0a 20 20 43 3d 4e 58 54   OLOR(0)..  C=NXT
### Disk Sector 186 ###
00: 43 48 52 28 29 0d 0a 20 20 57 48 49 4c 45 28 53   CHR()..  WHILE(S
10: 3d 4d 41 54 28 52 41 4e 4b 28 54 4f 50 28 29 29   =MAT(RANK(TOP())
20: 2a 38 2b 52 41 4e 4b 28 43 29 2d 31 29 29 0d 0a   *8+RANK(C)-1))..
30: 20 20 20 5b 0d 0a 20 20 20 49 46 28 53 3d 3d 31      [..   IF(S==1
40: 29 5b 43 4f 4c 4f 52 28 31 29 3b 50 55 53 48 28   )[COLOR(1);PUSH(
50: 43 29 3b 5d 0d 0a 20 20 20 49 46 20 28 57 41 49   C);]..   IF (WAI
60: 54 28 30 29 3d 3d 38 30 29 0d 0a 20 20 20 20 5b   T(0)==80)..    [
70: 0d 0a 20 20 20 20 57 41 49 54 28 30 29 3d 30 0d   ..    WAIT(0)=0.
### Disk Sector 187 ###
00: 0a 20 20 20 20 57 48 49 4c 45 20 28 57 41 49 54   .    WHILE (WAIT
10: 28 30 29 21 3d 38 30 29 20 5b 5d 0d 0a 20 20 20   (0)!=80) []..
20: 20 57 41 49 54 28 30 29 3d 30 0d 0a 20 20 20 20    WAIT(0)=0..
30: 5d 0d 0a 20 20 20 50 55 54 43 48 41 52 28 43 29   ]..   PUTCHAR(C)
40: 0d 0a 20 20 20 49 46 28 53 3d 3d 32 29 5b 50 4f   ..   IF(S==2)[PO
50: 50 28 29 3b 43 4f 4c 4f 52 28 2d 31 29 3b 5d 0d   P();COLOR(-1);].
60: 0a 20 20 20 49 46 28 53 3e 33 29 0d 0a 20 20 20   .   IF(S>3)..
70: 20 5b 0d 0a 20 20 20 20 50 4c 22 22 3b 50 55 54    [..    PL"";PUT
### Disk Sector 188 ###
00: 43 48 41 52 28 31 37 29 0d 0a 20 20 20 20 49 46   CHAR(17)..    IF
10: 28 53 3d 3d 34 29 5b 50 55 54 43 48 41 52 28 43   (S==4)[PUTCHAR(C
20: 29 3b 50 53 22 20 49 4e 20 51 55 4f 54 45 53 22   );PS" IN QUOTES"
30: 3b 5d 0d 0a 20 20 20 20 49 46 28 53 3d 3d 35 29   ;]..    IF(S==5)
40: 5b 50 53 22 45 58 54 52 41 20 22 3b 50 55 54 43   [PS"EXTRA ";PUTC
50: 48 41 52 28 43 29 3b 5d 0d 0a 20 20 20 20 49 46   HAR(C);]..    IF
60: 28 53 3d 3d 36 29 5b 50 53 22 4d 49 53 53 49 4e   (S==6)[PS"MISSIN
70: 47 20 22 3b 50 55 54 43 48 41 52 28 50 4f 50 28   G ";PUTCHAR(POP(
### Disk Sector 189 ###
00: 29 29 3b 5d 0d 0a 20 20 20 20 49 46 28 53 3d 3d   ));]..    IF(S==
10: 37 29 5b 50 53 22 45 58 54 52 41 20 22 3b 50 55   7)[PS"EXTRA ";PU
20: 54 43 48 41 52 28 50 4f 50 28 29 29 3b 5d 0d 0a   TCHAR(POP());]..
30: 20 20 20 20 50 4c 22 22 3b 43 4f 4c 4f 52 28 2d       PL"";COLOR(-
40: 28 53 3e 3d 36 29 29 0d 0a 20 20 20 20 5d 0d 0a   (S>=6))..    ]..
50: 20 20 20 49 46 28 53 3c 36 29 43 3d 4e 58 54 43      IF(S<6)C=NXTC
60: 48 52 28 29 0d 0a 20 20 20 5d 0d 0a 20 20 5d 0d   HR()..   ]..  ].
70: 0a 20 49 46 28 45 52 52 3c 2d 31 29 5b 50 53 22   . IF(ERR<-1)[PS"
### Disk Sector 190 ###
00: 45 52 52 4f 52 20 43 4f 44 45 22 3b 50 4e 28 45   ERROR CODE";PN(E
10: 52 52 29 3b 50 4c 22 22 3b 5d 0d 0a 20 46 43 4c   RR);PL"";].. FCL
20: 4f 53 45 28 55 4e 49 54 29 0d 0a 20 49 46 20 28   OSE(UNIT).. IF (
30: 45 52 52 4f 52 29 20 5b 50 53 22 11 22 3b 50 4e   ERROR) [PS".";PN
40: 20 45 52 52 4f 52 3b 50 53 22 45 52 52 4f 52 53    ERROR;PS"ERRORS
50: 22 3b 50 4c 22 12 22 5d 0d 0a 20 5d 0d 0a 5d 0d   ";PL"."].. ]..].
60: 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................