home *** CD-ROM | disk | FTP | other *** search
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ; Picture Bootsector by Michael G. Gray, 1994
- ; Disassembled, prettied and (slightly) optimised by Steven Moore - Tabs 8
-
- opt l0,d-,o+
-
- bra.s bootsec
- ds.b $38
-
- bootsec bsr waitvbl wait for next vbl
- moveq #7,d0 ] clear palette
- lea $FFFF8240.w,a0 ]
- paltlp move.l #$FFFFFFFF,(a0)+ ]
- dbf d0,paltlp ]
-
- pea text(pc) ] print text
- move.w #9,-(sp) ]
- trap #1 ]
- addq.l #6,sp ]
-
- movea.l $44E.w,a0 ] bend text... quite a clever
- moveq #22,d0 ] effect really. see what it
- loop1 moveq #79,d1 ] does to the font
- loop2 move.w (a0),d2 ]
- lsr.w #1,d2 ]
- move.w d2,(a0) ]
- lea 8(a0),a0 ]
- dbf d1,loop2 ]
- lea $280(a0),a0 ]
- dbf d0,loop1 ]
-
- move.w #$777,$FFFF8242.w ] fade in text
- move.w #6,d0 ]
- fadelp move.w d0,-(sp) ]
- bsr waitvbl ]
- subi.w #$110,$FFFF8242.w ]
- bsr.s waitvbl ]
- move.w (sp)+,d0 ]
- dbf d0,fadelp ]
-
- clr.w -(sp) ] load file
- pea fname(pc) ]
- move.w #$3D,-(sp) ]
- trap #1 ]
- addq.l #8,sp ]
- movea.l $44E.w,a0 ]
- lea -$7E00(a0),a5 ] note: the file is loaded below
- move.w d0,-(sp) ] the screen memory (-$7E00 bytes
- move.l a5,-(sp) ] below the screen, to be precise).
- move.l #$7D22,-(sp) ] only interested in 32034 bytes
- move.w d0,-(sp) ] (forget the last 2 if present)
- move.w #$3F,-(sp) ]
- trap #1 ]
- adda.l #$C,sp ]
- move.w #$3E,-(sp) ]
- trap #1 ]
- addq.l #4,sp ]
-
- moveq #6,d0 ] fade the text down again
- lea $FFFF8244.w,a0 ]
- fade2lp movem.w d0/a0,-(sp) ]
- bsr.s waitvbl ]
- bsr.s waitvbl ]
- addi.w #$110,$FFFF8242.w ]
- movem.w (sp)+,d0/a0 ]
- clr.l (a0)+ ]
- dbf d0,fade2lp ]
-
- move.w #8000-1,d0 ] copy loaded picture to screen
- movea.l $44E.w,a1 ]
- lea -$7DDE(a1),a0 ]
- scrlp move.l (a0)+,(a1)+ ]
- dbf d0,scrlp ]
- move.l a0,-(sp) ]
- bsr.s waitvbl ]
- movea.l (sp)+,a0 ]
-
- movem.l 2(a5),d0-d7 ] copy palette
- movem.l d0-d7,$FFFF8240.w ]
-
- waitvbl move.w #$25,-(sp) wait for next vertical blank
- trap #14
- addq.l #2,sp
- rts and exit...
-
- ;;;;;; Text ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ; You can change this... the 27,"Y",32+y,32+x sequences set cursor coords..
- ; Note that the y is stated before the x...you have 40 columns.
- ; (Don't make it too big!)
- ; dc.b ...whatever... (e.g., STOS equivalent!)
-
- text dc.b 27,"b",1 pen 1
- dc.b 27,"Y",32+4,32+13 locate 13,4
- dc.b "Banana Software" print "Banana Soft.."
- dc.b 27,"Y",32+5,32+13 locate 13,5
- dc.b "---------------" print "-----------.."
- dc.b 27,"Y",32+7,32+15 locate 15,7
- dc.b "Virus Free" print "Virus Free"
- dc.b 27,"Y",32+11,32+9 locate 9,11
- dc.b "Written by M.G.Gray '94" print "Written by .."
- dc.b 0 end
-
- ;;;;;; Filename ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- fname dc.b "A:\BOOT_PIC.PI1",0
-
- ;;;;;; That's all folks! ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-