home *** CD-ROM | disk | FTP | other *** search
- org $60000
- load $60000
-
- o: MOVEM.L D0-D7/A0-A6,-(SP)
- BSR install
- BSR install2
- MOVE.L #$00058000,txt
- CLR.W check
- nop
- nop
- MOVE.L #calc,A0
- MOVE.W #$007F,D0
- ret: MOVE.L #$00E1FFFE,(A0)
- MOVE.B D0,(A0)
- ADDQ.L #4,A0
- MOVE.L #$00E20000,(A0)+
- MOVE.L #$00E60000,(A0)+
- MOVE.L #$00EA0000,(A0)+
- MOVE.L #$00EE0000,(A0)+
- MOVE.L #$01020000,(A0)+
- MOVE.L #$01820000,(A0)+
- MOVE.L #$01840000,(A0)+
- MOVE.L #$01860000,(A0)+
- MOVE.L #$01880000,(A0)+
- MOVE.L #$018A0000,(A0)+
- MOVE.L #$018C0000,(A0)+
- MOVE.L #$018E0000,(A0)+
- MOVE.L #$01900000,(A0)+
- MOVE.L #$01920000,(A0)+
- MOVE.L #$01940000,(A0)+
- MOVE.L #$01960000,(A0)+
- MOVE.L #$01980000,(A0)+
- MOVE.L #$019A0000,(A0)+
- MOVE.L #$019C0000,(A0)+
- MOVE.L #$019E0000,(A0)+
- ADDQ.W #1,D0
- CMP.W #$0147,D0
- BNE ret
- MOVE.L 4,A6
- MOVE.L #gfxlib,A1
- CLR.L D0
- JSR -$0198(A6)
- MOVE.L D0,A1
- MOVE.L $0026(A1),g2a
- JSR -$019E(A6)
- MOVE.W $00DFF01C,g2E
- MOVE.W $00DFF002,g30
- MOVE.W #$7FFF,$00DFF09A
- MOVE.W #$7FFF,$00DFF09C
- BSR init2
- MOVE.W #$7FFF,$00DFF096
- MOVE.L #cop,$00DFF080
- MOVE.W g36,D1
- OR.W #$8200,D1
- MOVE.W D1,$00DFF096
- MOVE.L $0000006C,g32
- MOVE.L #irq,$0000006C
- MOVE.W #$C020,$00DFF09A
- MOVE.W #0,$00DFF088
- MOVE.W #$4200,$00DFF100
- MOVE.W #0,$00DFF102
- MOVE.W #0,$00DFF104
- MOVE.W #$0078,$00DFF108
- MOVE.W #$0078,$00DFF10A
- MOVE.W #$2878,$00DFF08E
- MOVE.W #$40C8,$00DFF090
- MOVE.W #$0038,$00DFF092
- MOVE.W #$00D0,$00DFF094
- loop: BTST #6,$00BFE001
- BNE loop
- MOVE.W #$7FFF,$00DFF09A
- MOVE.W #$7FFF,$00DFF09C
- MOVE.W #15,$00DFF096
- BSR init2
- MOVE.W #$7FFF,$00DFF09C
- MOVE.L g2A,$00DFF080
- MOVE.L g32,$0000006C
- MOVE.W g30,D0
- OR.W #$8000,D0
- MOVE.W D0,$00DFF096
- MOVE.W g2E,D0
- OR.W #$C000,D0
- MOVE.W D0,$00DFF09A
- MOVE.W #0,$00DFF088
- MOVEM.L (SP)+,D0-D7/A0-A6
- RTS
-
- init2: TST.B $00DFF005
- BEQ.L init2
- init3: TST.B $00DFF005
- BNE.L init3
- RTS
-
- gfxlib: DC.B 'graphics.library'
-
- DC.W 0
- g26: DC.W $0000,$0000
- g2a: DC.W $0000,$0000
- g2e: DC.W $0000
- g30: DC.W $0000
- g32: DC.L 0
-
- g36: DC.W $81F0,$EF00
-
- install:
- MOVE.L #'NO T',$00058000
- MOVE.L #'EXT ',$00058004
- MOVE.L #'FOUN',$00058008
- MOVE.L #$44202000,$0005800C
- MOVE.L 4,A6
- LEA doslib,A1
- CLR.L D0
- JSR -$0198(A6)
- MOVE.L D0,g26
- MOVE.L g26,A6
- MOVE.L #gE8,D1
- MOVE.L #$000003ED,D2
- JSR -$001E(A6)
- MOVE.L D0,gD8
- BEQ.S ret2
- MOVE.L g26,A6
- MOVE.L gD8,D1
- MOVE.L #$00058000,D2
- MOVE.L #$00008000,D3
- JSR -$002A(A6)
- MOVE.L D0,D6
- MOVE.L g26,A6
- MOVE.L gD8,D1
- JSR -$0024(A6)
- ret2: MOVE.L 4,A6
- MOVE.L g26,A1
- JSR -$019E(A6)
- RTS
-
- gd8: DC.W $0000,$0000
- doslib: DC.W $646F,$732E,$6C69,$6272,$6172,$7900
- ge8: DC.W $4B45,$4654,$4558,$5400
-
- install2:
- MOVE.L #tom,A0
- MOVE.L #ras,A1
- CLR.W D0
- ret3: MOVE.W D0,D1
- LSL.W #1,D1
- ADD.W #$002B,D1
- MOVE.B D1,(A0)
- MOVE.B D1,D2
- ROR.B #3,D2
- EOR.B D0,D2
- ROR.B #3,D2
- EOR.B D0,D2
- ROR.B #3,D2
- EOR.B D0,D2
- MOVE.B D2,1(A0)
- BTST #8,D1
- BEQ ro1
- BSET #2,3(A0)
- ro1: ADDQ.W #1,D1
- MOVE.B D1,2(A0)
- BTST #8,D1
- BEQ ro2
- BSET #1,3(A0)
- ro2: CLR.W D2
- MOVE.B (A1)+,D2
- MOVE.B D2,D4
- MOVE.W D2,D3
- AND.W #1,D3
- LSR.W #1,D2
- AND.W #1,D2
- MOVE.W D3,4(A0)
- MOVE.W D2,6(A0)
- ADDQ.L #8,A0
- ADDQ.W #1,D0
- CMP.W #$008C,D0
- BNE ret3
- RTS
-
- install3:
- MOVE.L #tom,$00DFF120
- MOVE.L #ras,A0
- MOVE.L #tom,A1
- ADDQ.L #1,A1
- MOVE.W #$0086,D0
- plus: MOVE.B (A0)+,D1
- ADD.B D1,(A1)
- ADDQ.L #8,A1
- DBRA D0,plus
- RTS
-
- tom: blk.b 638
- tom2: blk.b 482
-
- ras: DC.W $0102,$0302,$0302,$0102,$0302,$0102,$0201,$0203
- DC.W $0302,$0102,$0102,$0302,$0302,$0102,$0103,$0201
- DC.W $0201,$0302,$0301,$0102,$0302,$0302,$0103,$0103
- DC.W $0201,$0203,$0203,$0101,$0203,$0201,$0102,$0203
- DC.W $0201,$0203,$0302,$0102,$0102,$0301,$0102,$0302
- DC.W $0302,$0102,$0302,$0102,$0201,$0203,$0302,$0102
- DC.W $0102,$0302,$0302,$0102,$0103,$0201,$0201,$0302
- DC.W $0301,$0102,$0302,$0302,$0103,$0103,$0201,$0203
- DC.W $0203,$0101,$0203,$0201,$0102,$0203,$0201,$0203
- DC.W $0302,$0102,$0102,$0301,$0102,$0302,$0302,$0102
- DC.W $0302,$0102,$0201,$0203,$0302,$0102,$0102,$0302
- DC.W $0302,$0102,$0103,$0201,$0201,$0302,$0301
-
- irq: MOVEM.L D0-D7/A0-A6,-(SP)
- MOVE.L #$00DFF124,A0
- MOVE.L #gAE6,(A0)+
- MOVE.L #gAE6,(A0)+
- MOVE.L #gAE6,(A0)+
- MOVE.L #gAE6,(A0)+
- MOVE.L #gAE6,(A0)+
- MOVE.L #gAE6,(A0)+
- MOVE.L #gAE6,(A0)+
- BSR install3
- MOVE.L #0,A4
- MOVE.L #plane,A0
- MOVE.L #$00070000,D0
- SWAP D0
- MOVE.W D0,(A0)
- ADDQ.L #4,A0
- MOVE.W D0,(A0)
- ADDQ.L #4,A0
- MOVE.W D0,(A0)
- ADDQ.L #4,A0
- MOVE.W D0,(A0)
- MOVE.W #0,A5
- MOVE.L #$09F00000,$00DFF040
- MOVE.L #$FFFFFFFF,$00DFF044
- MOVE.L #calc+$18,$00DFF054
- MOVE.L #calc+$C0,$00DFF050
- MOVE.W #$0018,$00DFF064
- MOVE.W #$0018,$00DFF066
- MOVE.W #$319E,$00DFF058
- MOVE.L #$00074B00,A1
- MOVE.L #cop,A0
- ADD.L #$0000009E,A0
- MOVE.W #$00C7,D0
- MOVE.W #$07FE,D1
- MOVE.W gAEE,D2
- MOVE.W gAF0,D3
- MOVE.W gAF2,D4
- MOVE.W gAF4,D5
- AND.W D1,D2
- AND.W D1,D3
- AND.W D1,D4
- AND.W D1,D5
- MOVE.W gAF6,D6
- ADD.W D6,gAEE
- MOVE.W gAF8,D6
- ADD.W D6,gAF0
- MOVE.W gAFA,D6
- ADD.W D6,gAF2
- MOVE.W gAFC,D6
- ADD.W D6,gAF4
- CLR.L D7
- MOVE.L #$00000042,A6
- ret4: MOVE.W 0(A1,D4.W),D6
- ADD.W 0(A1,D5.W),D6
- LSR.W #5,D6
- MULU #$A0,D6
- MOVE.W D6,A4
- ADD.W A5,A4
- MOVE.W 0(A1,D2.W),D6
- ADD.W 0(A1,D3.W),D6
- LSR.W #6,D6
- MOVE.B D6,D7
- NOT.B D7
- LSR.W #3,D6
- ADD.W A4,D6
- MOVE.W D6,(A0)
- ADDQ.L #4,A0
- ADD.W #$0028,D6
- MOVE.W D6,(A0)
- ADDQ.L #4,A0
- ADD.W #$0028,D6
- MOVE.W D6,(A0)
- ADDQ.L #4,A0
- ADD.W #$0028,D6
- MOVE.W D6,(A0)
- ADDQ.L #5,A0
- AND.B #15,D7
- MOVE.B D7,D6
- LSL.B #4,D6
- OR.B D6,D7
- MOVE.B D7,(A0)+
- ADD.L A6,A0
- ADD.W #9,D2
- ADD.W #$FFF3,D3
- ADD.W #$FFF9,D4
- ADD.W #6,D5
- AND.W D1,D2
- AND.W D1,D3
- AND.W D1,D4
- AND.W D1,D5
- DBRA D0,ret4
- ; BSR $00C113A6
- MOVE.L #calc2,A0
- MOVE.L #gB58,A2
- ret5: CLR.L D0
- MOVE.L txt,A1
- MOVE.B (A1)+,D0
- TST.B D0
- BNE.S ro3
- MOVE.L #$00058000,txt
- BRA.S ret5
-
- ro3: CMP.B #10,D0
- BNE.S ro4
- MOVE.W #$0033,D0
- BRA.S ro5
-
- ro4: SUB.W #$0020,D0
- MOVE.L #gB0C,A1
- MOVE.B 0(A1,D0.L),D0
- ro5: MULU #$60,D0
- ADD.L #$00075300,D0
- ADD.L gB06,D0
- MOVE.L D0,A1
- MOVE.W (A1)+,D0
- MOVE.W (A1)+,D1
- MOVE.W (A1),D2
- MOVE.W #14,D3
- ret6: CLR.W D4
- LSL.W #1,D2
- ROXL.W #1,D4
- LSL.W #1,D1
- ROXL.W #1,D4
- LSL.W #1,D0
- ROXL.W #1,D4
- LSL.W #1,D4
- MOVE.W 0(A2,D4.W),(A0)
- MOVE.W 0(A2,D4.W),-$0054(A0)
- ADDQ.L #4,A0
- DBRA D3,ret6
- ADDQ.W #1,check
- MOVE.W check,D0
- AND.W #1,D0
- BNE.S ro7
- ADDQ.L #6,gB06
- CMP.L #$00000060,gB06
- BNE.S ro7
- CLR.L gB06
- ADDQ.L #1,txt
- nop
- nop
- ro7: MOVEM.L (SP)+,D0-D7/A0-A6
- MOVE.W #$4020,$00DFF09C
- RTE
-
- gae6: DC.W $0000,$0000,$0000,$0000
- gaee: DC.W $0000
- gaf0: DC.W $0000
- gaf2: DC.W $0000
- gaf4: DC.W $0000
- gaf6: DC.W $000C
- gaf8: DC.W $FFF7
- gafa: DC.W $000D
- gafc: DC.W $FFF6,$0006,$0B68
- txt: DC.W $0005,$8000
- gb06: DC.W $0000,$0000
- check: DC.W $0000
- gb0c: DC.W $3324,$2A31,$2F30,$332D,$2B2C
- DC.W $3333,$2726,$282E,$231A,$1B1C,$1D1E,$1F20,$2122
- DC.W $2829,$3E3E,$3E25,$2D00,$0102,$0304,$0506,$0708
- DC.W $090A,$0B0C,$0D0E,$0F10,$1112,$1314,$1516,$1718
- DC.W $1933,$3333,$3333,$3233,$3435,$3637,$3839,$3A3B
- DC.W $3D33
- gb58: DC.W $0000,$0FFF,$0DDD,$0BBB,$0999,$0777,$0555
- DC.W $02B7
-
- cop: DC.W $0102,$0000,$0100,$4200,$0182,$0FCF,$0184,$0F9D
- DC.W $0186,$0E6B,$0188,$0E37,$018A,$0C00,$018C,$0036
- DC.W $018E,$0257,$0190,$0479,$0192,$06AA,$0194,$0ABB
- DC.W $0196,$0FF0,$0198,$0EB0,$019A,$0D80,$019C,$0B60
- DC.W $019E,$0A30,$01A2,$0888,$01A4,$0CCC,$01A6,$0FFF
- DC.W $0104,$0000,$00E0,$0005,$00E2,$0000,$00E4,$0005
- DC.W $00E6,$0028,$00E8,$0005,$00EA,$0050,$00EC,$0005
- DC.W $00EE,$0078,$7F07,$FFFE,$0180,$0FF0,$0104,$0010
- DC.W $7FD1,$FFFE,$00E0
- plane: DC.W $0000,$00E4,$0000,$00E8,$0000
- DC.W $00EC,$0000,$0180,$0000
-
- calc: blk.b 16742
-
- calc2: blk.b 58
-
- dc.w $ffff,$fffe
-
- data: = $70000
-
- >extern "asmdisk2:binary/strict",data
-
-