Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 276a238

Browse files
committed
inline
1 parent 5bf0b44 commit 276a238

5 files changed

Lines changed: 144 additions & 151 deletions

File tree

inline.s

Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
.segment "CODE"
2+
3+
.ifndef CONFIG_NO_INPUTBUFFER_ZP
4+
L2420:
5+
.ifdef OSI
6+
jsr OUTDO
7+
.endif
8+
dex
9+
bpl INLIN2
10+
L2423:
11+
.ifdef OSI
12+
jsr OUTDO
13+
.endif
14+
jsr CRDO
15+
.endif
16+
17+
; ----------------------------------------------------------------------------
18+
; READ A LINE, AND STRIP OFF SIGN BITS
19+
; ----------------------------------------------------------------------------
20+
.ifndef KBD
21+
INLIN:
22+
.ifdef APPLE
23+
ldx #$DD
24+
INLIN1:
25+
stx $33
26+
jsr L2900
27+
cpx #$EF
28+
bcs L0C32
29+
ldx #$EF
30+
L0C32:
31+
lda #$00
32+
sta INPUTBUFFER,x
33+
ldx #<INPUTBUFFER-1
34+
ldy #>INPUTBUFFER-1
35+
rts
36+
.endif
37+
38+
.ifndef APPLE
39+
ldx #$00
40+
INLIN2:
41+
jsr GETLN
42+
.ifndef CONFIG_NO_LINE_EDITING
43+
cmp #$07
44+
beq L2443
45+
.endif
46+
cmp #$0D
47+
beq L2453
48+
.ifndef CONFIG_NO_LINE_EDITING
49+
cmp #$20
50+
bcc INLIN2
51+
.ifdef MICROTAN
52+
cmp #$80
53+
.else
54+
cmp #$7D
55+
.endif
56+
bcs INLIN2
57+
cmp #$40 ; @
58+
beq L2423
59+
.ifdef MICROTAN
60+
cmp #$7F ; DEL
61+
.else
62+
cmp #$5F ; _
63+
.endif
64+
beq L2420
65+
L2443:
66+
.ifdef MICROTAN
67+
cpx #$4F
68+
.else
69+
cpx #$47
70+
.endif
71+
bcs L244C
72+
.endif
73+
sta INPUTBUFFER,x
74+
inx
75+
.ifdef OSI
76+
.byte $2C
77+
.else
78+
bne INLIN2
79+
.endif
80+
L244C:
81+
.ifndef CONFIG_NO_LINE_EDITING
82+
lda #$07 ; BEL
83+
jsr OUTDO
84+
bne INLIN2
85+
.endif
86+
L2453:
87+
jmp L29B9
88+
.endif
89+
.endif
90+
91+
.ifndef KBD
92+
.ifndef APPLE
93+
GETLN:
94+
.ifdef CONFIG_FILE
95+
jsr CHRIN
96+
ldy Z03
97+
bne L2465
98+
.else
99+
jsr MONRDKEY
100+
.endif
101+
.ifdef OSI
102+
nop
103+
nop
104+
nop
105+
nop
106+
nop
107+
nop
108+
nop
109+
nop
110+
nop
111+
nop
112+
nop
113+
nop
114+
nop
115+
nop
116+
and #$7F
117+
.endif
118+
.endif /* APPLE */
119+
.ifdef APPLE
120+
RDKEY:
121+
jsr LFD0C
122+
and #$7F
123+
.endif
124+
cmp #$0F
125+
bne L2465
126+
pha
127+
lda Z14
128+
eor #$FF
129+
sta Z14
130+
pla
131+
L2465:
132+
rts
133+
.endif /* KBD */

print.s

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ PRINT2:
2222
cmp #','
2323
; Pre-KIM had no CLC. KIM added the CLC
2424
; here. Post-KIM moved the CLC up...
25-
.ifdef KIM
25+
.if .def(CONFIG_11A) && (!.def(CONFIG_2))
2626
clc
2727
.endif
2828
beq L29DE
@@ -142,9 +142,9 @@ L29D9:
142142
pla
143143
tax
144144
.else
145-
.ifdef APPLE
145+
.ifndef CONFIG_2
146146
lda #$00
147-
sta $50
147+
sta POSX
148148
.endif
149149
eor #$FF
150150
.endif
@@ -196,7 +196,7 @@ L29F5:
196196
plp
197197
bcc L2A09
198198
.else
199-
.ifdef APPLE
199+
.ifdef CONFIG_11
200200
beq L1185
201201
jmp SYNERR
202202
L1185:
@@ -205,7 +205,7 @@ L1185:
205205
.endif
206206
pla
207207
cmp #TOKEN_TAB
208-
.ifdef APPLE
208+
.ifdef CONFIG_11
209209
bne L2A09
210210
.else
211211
bne L2A0A

program.s

Lines changed: 4 additions & 144 deletions
Original file line numberDiff line numberDiff line change
@@ -315,137 +315,7 @@ RET3:
315315
rts
316316
.endif
317317

318-
.ifndef CONFIG_NO_INPUTBUFFER_ZP
319-
L2420:
320-
.ifdef OSI
321-
jsr OUTDO
322-
.endif
323-
dex
324-
bpl INLIN2
325-
L2423:
326-
.ifdef OSI
327-
jsr OUTDO
328-
.endif
329-
jsr CRDO
330-
.endif
331-
332-
; ----------------------------------------------------------------------------
333-
; READ A LINE, AND STRIP OFF SIGN BITS
334-
; ----------------------------------------------------------------------------
335-
.ifndef KBD
336-
INLIN:
337-
.ifdef APPLE
338-
ldx #$DD
339-
INLIN1:
340-
stx $33
341-
jsr L2900
342-
cpx #$EF
343-
bcs L0C32
344-
ldx #$EF
345-
L0C32:
346-
lda #$00
347-
sta INPUTBUFFER,x
348-
ldx #<INPUTBUFFER-1
349-
ldy #>INPUTBUFFER-1
350-
rts
351-
.endif
352-
353-
.ifndef APPLE
354-
ldx #$00
355-
INLIN2:
356-
jsr GETLN
357-
.ifndef CONFIG_NO_LINE_EDITING
358-
cmp #$07
359-
beq L2443
360-
.endif
361-
cmp #$0D
362-
beq L2453
363-
.ifndef CONFIG_NO_LINE_EDITING
364-
cmp #$20
365-
bcc INLIN2
366-
.ifdef MICROTAN
367-
cmp #$80
368-
.else
369-
cmp #$7D
370-
.endif
371-
bcs INLIN2
372-
cmp #$40 ; @
373-
beq L2423
374-
.ifdef MICROTAN
375-
cmp #$7F ; DEL
376-
.else
377-
cmp #$5F ; _
378-
.endif
379-
beq L2420
380-
L2443:
381-
.ifdef MICROTAN
382-
cpx #$4F
383-
.else
384-
cpx #$47
385-
.endif
386-
bcs L244C
387-
.endif
388-
sta INPUTBUFFER,x
389-
inx
390-
.ifdef OSI
391-
.byte $2C; XXX
392-
.else
393-
bne INLIN2
394-
.endif
395-
L244C:
396-
.ifndef CONFIG_NO_LINE_EDITING
397-
lda #$07 ; BEL
398-
jsr OUTDO
399-
bne INLIN2
400-
.endif
401-
L2453:
402-
jmp L29B9
403-
.endif
404-
.endif
405-
406-
.ifndef KBD
407-
.ifndef APPLE
408-
GETLN:
409-
.ifdef CONFIG_FILE
410-
jsr CHRIN
411-
ldy Z03
412-
bne L2465
413-
.else
414-
jsr MONRDKEY
415-
.endif
416-
.ifdef OSI
417-
nop
418-
nop
419-
nop
420-
nop
421-
nop
422-
nop
423-
nop
424-
nop
425-
nop
426-
nop
427-
nop
428-
nop
429-
nop
430-
nop
431-
and #$7F
432-
.endif
433-
.endif /* APPLE */
434-
.ifdef APPLE
435-
RDKEY:
436-
jsr LFD0C
437-
and #$7F
438-
.endif
439-
cmp #$0F
440-
bne L2465
441-
pha
442-
lda Z14
443-
eor #$FF
444-
sta Z14
445-
pla
446-
L2465:
447-
rts
448-
.endif /* KBD */
318+
.include "inline.s"
449319

450320
; ----------------------------------------------------------------------------
451321
; TOKENIZE THE INPUT LINE
@@ -666,8 +536,7 @@ SCRTCH:
666536
; ----------------------------------------------------------------------------
667537
SETPTRS:
668538
jsr STXTPT
669-
.ifndef APPLE
670-
.ifdef CONFIG_11
539+
.ifdef CONFIG_11A
671540
lda #$00
672541

673542
; ----------------------------------------------------------------------------
@@ -676,7 +545,6 @@ SETPTRS:
676545
CLEAR:
677546
bne L256A
678547
.endif
679-
.endif
680548
CLEARC:
681549
.ifdef KBD
682550
lda #<CONST_MEMSIZ
@@ -705,19 +573,11 @@ STKINI:
705573
.ifdef CONFIG_2
706574
tay
707575
.else
708-
.ifdef APPLE
709-
sta STACK+249
710-
.else
711-
sta STACK+253
712-
.endif
576+
sta STACK+STACK_TOP+1
713577
.endif
714578
pla
715579
.ifndef CONFIG_2
716-
.ifdef APPLE
717-
sta STACK+250
718-
.else
719-
sta STACK+254
720-
.endif
580+
sta STACK+STACK_TOP+2
721581
.endif
722582
ldx #STACK_TOP
723583
txs

token.s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ UNFNC:
112112
.ifdef CONFIG_NO_POKE
113113
keyword_addr "VER", VER
114114
.else
115-
.ifdef KIM
115+
.ifdef CONFIG_RAM
116116
keyword_addr "USR", IQERR
117117
.else
118118
keyword_addr "USR", USR

trig.s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,6 @@ POLY_ATN:
196196
.byte $81,$00,$00,$00,$00
197197
.endif
198198

199-
.ifdef KIM
199+
.if .def(CONFIG_11A) && (!.def(CONFIG_2))
200200
.byte $00 ; XXX
201201
.endif

0 commit comments

Comments
 (0)