-
Notifications
You must be signed in to change notification settings - Fork 82
/
code4
143 lines (143 loc) · 1.69 KB
/
code4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
.PAG 'CODE4'
NEWSTT JSR ISCNTC
LDA TXTPTR
LDY TXTPTR+1
CPY #BUFPAG
NOP
BEQ DIRCON
STA OLDTXT
STY OLDTXT+1
DIRCON LDY #0
LDA (TXTPTR)Y
BNE MORSTS
LDY #2
LDA (TXTPTR)Y
CLC
BNE DIRCN1
JMP ENDCON
DIRCN1 INY
LDA (TXTPTR)Y
STA CURLIN
INY
LDA (TXTPTR)Y
STA CURLIN+1
TYA
ADC TXTPTR
STA TXTPTR
BCC GONE
INC TXTPTR+1
GONE JMP (IGONE)
NGONE JSR CHRGET
NGONE1 JSR GONE3
JMP NEWSTT
GONE3 BEQ ISCRTS
GONE2 SBC #ENDTK
BCC GLET
CMP #SCRATK-ENDTK+1
BCS SNERRX
ASL A
TAY
LDA STMDSP+1,Y
PHA
LDA STMDSP,Y
PHA
JMP CHRGET
GLET JMP LET
MORSTS CMP #':
BEQ GONE
SNERR1 JMP SNERR
SNERRX CMP #GOTK-ENDTK
BNE SNERR1
JSR CHRGET
LDA #TOTK
JSR SYNCHR
JMP GOTO
RESTOR SEC
LDA TXTTAB
SBC #1
LDY TXTTAB+1
BCS RESFIN
DEY
RESFIN STA DATPTR
STY DATPTR+1
ISCRTS RTS
ISCNTC JSR $FFE1
STOP BCS STOPC
END CLC
STOPC BNE CONTRT
LDA TXTPTR
LDY TXTPTR+1
LDX CURLIN+1
INX
BEQ DIRIS
STA OLDTXT
STY OLDTXT+1
STPEND LDA CURLIN
LDY CURLIN+1
STA OLDLIN
STY OLDLIN+1
DIRIS PLA
PLA
ENDCON LDA #<BRKTXT
LDY #>BRKTXT
BCC GORDY
JMP ERRFIN
GORDY JMP READY
CONT BNE CONTRT
LDX #ERRCN
LDY OLDTXT+1
BNE *+5
JMP ERROR
LDA OLDTXT
STA TXTPTR
STY TXTPTR+1
LDA OLDLIN
LDY OLDLIN+1
STA CURLIN
STY CURLIN+1
CONTRT RTS
RUN PHP
LDA #0 ;NO KERNAL MESSAGES
JSR SETMSG
PLP
BNE *+5
JMP RUNC
JSR CLEARC
JMP RUNC2
GOSUB LDA #3
JSR GETSTK
LDA TXTPTR+1
PHA
LDA TXTPTR
PHA
LDA CURLIN+1
PHA
LDA CURLIN
PHA
LDA #GOSUTK
PHA
RUNC2 JSR CHRGOT
JSR GOTO
JMP NEWSTT
GOTO JSR LINGET
JSR REMN
SEC
LDA CURLIN
SBC LINNUM
LDA CURLIN+1
SBC LINNUM+1
BCS LUK4IT
TYA
SEC
ADC TXTPTR
LDX TXTPTR+1
BCC LUKALL
INX
BCS LUKALL
LUK4IT LDA TXTTAB
LDX TXTTAB+1
LUKALL JSR FNDLNC
BCC USERR
LDA LOWTR
SBC #1
.END