home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Fred Fish Collection 1.5
/
ffcollection-1-5-1992-11.iso
/
ff_progs
/
prt_util
/
psintrp.lzh
/
PSINTRP
/
FFPA.A
< prev
next >
Wrap
Text File
|
1991-08-16
|
6KB
|
328 lines
xdef FFPAFP
xdef FFPFPA
section one
FFPAFP
moveq #0,D7
moveq #0,D6
bsr R0004CA
beq lab0448
bcs lab042E
cmp.b #'-',D5
seq D6
swap D6
bsr R0004CA
beq lab0448
lab042E
cmp.b #'.',D5
bne lab043A
bsr R0004CA
beq lab04A4
lab043A
subq.l #1,A0
or.b #1,CCR
rts
lab0442
bsr R0004CA
bne lab049A
lab0448
bsr R0004AC
bcc lab0442
lab044C
addq.w #1,D6
bsr R0004CA
beq lab044C
cmp.b #'.',D5
bne lab045C
lab0458
bsr R0004CA
beq lab0458
lab045C
cmp.b #'E',D5
bne lab0492
bsr R0004CA
beq lab0476
bcs lab043A
rol.l #8,D6
cmp.b #'-',D5
seq D6
ror.l #8,D6
bsr R0004CA
bne lab043A
lab0476
move.w D5,D4
lab0478
bsr R0004CA
bne lab048A
mulu #$0A,D4
cmp.w #$07D0,D4
bhi lab043A
add.w D5,D4
bra lab0478
lab048A
tst.l D6
bpl lab0490
neg.w D4
lab0490
add.w D4,D6
lab0492
subq.l #1,A0
jmp FFPDBF
lab049A
cmp.b #'.',D5
bne lab045C
lab04A0
bsr R0004CA
bne lab045C
lab04A4
bsr R0004AC
bcs lab0458
subq.w #1,D6
bra lab04A0
R0004AC
move.l D7,D3
lsl.l #1,D3
bcs lab04C8
lsl.l #1,D3
bcs lab04C8
lsl.l #1,D3
bcs lab04C8
add.l D7,D3
bcs lab04C8
add.l D7,D3
bcs lab04C8
add.l D5,D3
bcs lab04C8
move.l D3,D7
lab04C8
rts
R0004CA
moveq #0,D5
move.b (A0)+,D5
cmp.b #'+',D5
beq lab04F0
cmp.b #'-',D5
beq lab04F0
cmp.b #'0',D5
bcs lab04F6
cmp.b #'9',D5
bhi lab04F6
and.b #$0F,D5
move #4,CCR
rts
lab04F0
move #0,CCR
rts
lab04F6
move #1,CCR
rts
FFPDBF
moveq #$20,D5
tst.l D7
beq lab0330
bmi lab02B6
moveq #$1F,D5
lab02B0
add.l D7,D7
dbmi D5,lab02B0
lab02B6
cmp.w #$12,D6
bgt lab033A
cmp.w #$FFE4,D6
blt lab0332
move.w D6,D4
neg.w D4
muls #6,D4
move.l A0,-(SP)
lea .wmidtable,A0
add.w 0(A0,D4.w),D5
move.w D5,D6
move.l 2(A0,D4.w),D3
move.l (SP),A0
move.l D3,(SP)
move.w D7,D5
mulu D3,D5
clr.w D5
swap D5
moveq #0,D4
swap D3
mulu D7,D3
add.l D3,D5
addx.b D4,D4
swap D7
move.w D7,D3
mulu 2(SP),D3
add.l D3,D5
bcc lab0300
addq.b #1,D4
lab0300
move.w D4,D5
swap D5
mulu (SP),D7
lea 4(SP),SP
add.l D5,D7
bmi lab0312
add.l D7,D7
subq.w #1,D6
lab0312
add.l #$00000080,D7
bcc lab031E
roxr.l #1,D7
addq.w #1,D6
lab031E
moveq #9,D3
move.w D6,D4
asl.w D3,D6
bvs lab0336
eor.w #$8000,D6
lsr.l D3,D6
move.b D6,D7
beq lab0332
lab0330
rts
lab0332
moveq #0,D7
rts
lab0336
tst.w D4
bmi lab0332
lab033A
moveq #-1,D7
swap D6
roxr.b #1,D6
roxr.b #1,D7
tst.b D7
or.b #2,CCR
rts
FFPFPA
lea -$0A(SP),SP
move.l $0A(SP),-(SP)
move.w #0,-(SP)
tst.b D7
movem.l D2-D6/A0/A1,-(SP)
bne lab0512
moveq #$41,D7
lab0512
move.w #$2B2E,$22(SP)
move.b D7,D6
bpl lab0520
addq.b #2,$22(SP)
lab0520
add.b D6,D6
move.b #$80,D7
eor.b D7,D6
ext.w D6
asr.w #1,D6
moveq #1,D3
lea .wmidtable,A0
cmp.w (A0),D6
blt lab0554
bgt lab0546
lab053A
cmp.l 2(A0),D7
bcc lab0560
lab0540
addq.w #6,A0
subq.w #1,D3
bra lab0560
lab0546
lea -6(A0),A0
addq.w #1,D3
cmp.w (A0),D6
bgt lab0546
beq lab053A
bra lab0540
lab0554
lea 6(A0),A0
subq.w #1,D3
cmp.w (A0),D6
blt lab0554
beq lab053A
lab0560
move.l #$452B3030,$2C(SP)
move.w D3,D2
bpl lab0572
neg.w D2
addq.b #2,$2D(SP)
lab0572
cmp.w #$0A,D2
bcs lab0580
addq.b #1,$2E(SP)
sub.w #$0A,D2
lab0580
or.b D2,$2F(SP)
moveq #7,D2
lea $24(SP),A1
tst.l D7
bpl lab0594
tst.b 5(A0)
bne lab0596
lab0594
clr.b D7
lab0596
move.w D6,D4
sub.w (A0)+,D4
move.l (A0)+,D5
lsr.l D4,D5
moveq #9,D4
lab05A0
sub.l D5,D7
dbcs D4,lab05A0
bcs lab05AA
clr.b D4
lab05AA
add.l D5,D7
sub.b #9,D4
neg.b D4
or.b #'0',D4
move.b D4,(A1)+
dbra D2,lab0596
move.w D3,D7
ext.l D7
movem.l (SP)+,D2-D6/A0/A1
addq.l #2,SP
rts
section two,data
.wFFP10TBL
dc.w $40,$8AC7,$2305,$3C,$DE0B,$6B3A
dc.w $39,$B1A2,$BC2F,$36,$8E1B,$C9BF
dc.w $32,$E35F,$A932,$2F,$B5E6,$20F5
dc.w $2C,$9184,$E72A,$28,$E8D4,$A510
dc.w $25,$BA43,$B740,$22,$9502,$F900
dc.w $1E,$EE6B,$2800,$1B,$BEBC,$2000
dc.w $18,$9896,$8000,$14,$F424,0,$11
dc.w $C350,0,$0E,$9C40,0,$0A,$FA00
dc.w 0,7,$C800,0,4,$A000,0
.wmidtable
dc.w 1,$8000,0,$FFFD,$CCCC,$CCCD,$FFFA
dc.w $A3D7,$0A3D,$FFF7,$8312,$6E98
dc.w $FFF3,$D1B7,$1759,$FFF0,$A7C5
dc.w $AC47,$FFED,$8637,$BD06,$FFE9
dc.w $D6BF,$94D6,$FFE6,$ABCC,$7712
dc.w $FFE3,$8970,$5F41,$FFDF,$DBE6
dc.w $FECF,$FFDC,$AFEB,$FF0C,$FFD9
dc.w $8CBC,$CC09,$FFD5,$E12E,$1342
dc.w $FFD2,$B424,$DC35,$FFCF,$901D
dc.w $7CF7,$FFCB,$E695,$94BF,$FFC8
dc.w $B877,$AA32,$FFC5,$9392,$EE8F
dc.w $FFC1,$EC1E,$4A7E,$FFBE,$BCE5
dc.w $0865,$FFBB,$971D,$A050,$FFB7
dc.w $F1C9,$81,$FFB4,$C16D,$9A01,$FFB1
dc.w $9ABE,$14CD,$FFAD,$F796,$87AE
dc.w $FFAA,$C612,$0625,$FFA7,$9E74
dc.w $D1B8,$FFA3,$FD87,$B5F3
end