-
Notifications
You must be signed in to change notification settings - Fork 85
/
Copy pathcode23
82 lines (82 loc) · 1.16 KB
/
code23
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
.PAG 'CODE23'
LDA #'-
FOUT14 STA FBUFFR+1,Y
LDA #'E
STA FBUFFR,Y
TXA
LDX #@57
SEC
FOUT15 INX
SBC #@12
BCS FOUT15
ADC #@72
STA FBUFFR+3,Y
TXA
STA FBUFFR+2,Y
LDA #0
STA FBUFFR+4,Y
BEQ FOUT20
FOUT19 STA FBUFFR-1,Y
FOUT17 LDA #0
STA FBUFFR,Y
FOUT20 LDA #<FBUFFR
LDY #>FBUFFR
RTS
FHALF .BYT @200,0
ZERO .BYT 0,0,0
FOUTBL .BYT @372,@12,@37,0,0
.BYT @230,@226,@200,@377
.BYT @360,@275,@300,0
.BYT 1,@206,@240,@377
.BYT @377,@330,@360,0,0
.BYT 3,@350,@377,@377
.BYT @377,@234,0,0,0,@12
.BYT @377,@377,@377,@377
FDCEND .BYT @377,@337,@12,@200
.BYT 0,3,@113,@300,@377
.BYT @377,@163,@140,0,0
.BYT @16,@20,@377,@377
.BYT @375,@250,0,0,0,@74
TIMEND
;
CKSMC0 *=*+1 ;$C000 8K ROM CHECKSUM ADJ
PATCHS *=*+30 ; PATCH AREA
;
SQR JSR MOVAF
LDA #<FHALF
LDY #>FHALF
JSR MOVFM
FPWRT BEQ EXP
LDA ARGEXP
BNE FPWRT1
JMP ZEROF1
FPWRT1 LDX #<TEMPF3
LDY #>TEMPF3
JSR MOVMF
LDA ARGSGN
BPL FPWR1
JSR INT
LDA #<TEMPF3
LDY #>TEMPF3
JSR FCOMP
BNE FPWR1
TYA
LDY INTEGR
FPWR1 JSR MOVFA1
TYA
PHA
JSR LOG
LDA #<TEMPF3
LDY #>TEMPF3
JSR FMULT
JSR EXP
PLA
LSR A
BCC NEGRTS
NEGOP LDA FACEXP
BEQ NEGRTS
LDA FACSGN
EOR #@377
STA FACSGN
NEGRTS RTS
.END