   opt l-,c+,d+

   jsr   opengralib

   move.l   #$60000,a0
   move.l   #$1a000,d0
looop   move.b   #0,(a0)+
   sub.l   #1,d0
   bne   looop

main   move.w   #$a0,$dff096
   move.l   gfxbase,a0
   move.l   $32(a0),temp
   move.l   #$76000,$32(a0)
   move.w   #$8080,$dff096

   move.l   $4,a6
   jsr   -132(a6)

   move.l   gfxbase,a6

   move.l   #bitmap,a0
   move.l   #1,d0
   move.l   #384,d1
   move.l   #40,d2
   jsr   -390(a6)

   move.l   #bitmap,a0
   move.l   #$64000,8(a0)

   move.l   #rastport,a1
   jsr   -198(a6)
   
   move.l   #rastport,a0
   move.l   #bitmap,4(a0)

   move.l   #rastport,a1
   jsr   -48(a6)

   move.l   #rastport,a1
   move.l   #1,d0
   jsr   -342(a6)

       jsr   settext

********************* Load Pictures *****************

getpic   lea   dosss,a1
   move.l   $4,a6
   clr.l   d0
   jsr   -408(a6)
   move.l   d0,a6

   move.l   #file,d1
   move.l   #1005,d2
   jsr   -30(a6)
   move.l   d0,fp

   move.l   fp,d1
   move.l   #$70000,d2
   move.l   #2860,d3
   jsr   -42(a6)
   move.l   d0,len

   move.l   fp,d1
   jsr   -36(a6)
   
   jsr   unpack

   move.l   #$76000,a0
   move.l   #$60000+40*25,a1
   
   move.l   #2680,d0
   
loop   move.b   (a0)+,(a1)+

   sub.l   #1,d0
   bne   loop

   move.l   #$76000+2680,a0
   move.l   #$62000+40*25,a1
   
   move.l   #2680,d0
   
_loop   move.b   (a0)+,(a1)+

   sub.l   #1,d0
   bne   _loop

   jsr   copcol
   jsr   copcol2

   move.l   #2600,d0
   move.l   #cop,a0
   move.l   #$76000,a1
qwer   move.b   (a0)+,(a1)+
   sub.l   #1,d0
   bne   qwer

wait   
   jsr   scroll
   jsr   strole
   jsr   scroll2
   jsr   tfmove
   btst.b   #6,$bfe001
   bne   wait

   move.w   #$80,$dff096
   move.l   gfxbase,a0
   move.l   temp,$32(a0)
   move.w   #$80a0,$dff096

   move.l   $4,a6
   jsr   -138(a6)

   rts

file    dc.b   'df0:tor.packed',0
   EVEN
   
fp   dc.l   0

len   dc.l   0

bitmap   ds.l   100

rastport ds.l   100

temp   dc.l   0

text   dc.b   'Morre'

cop   dc.w   $0180,$0000,$0182,$0fff
   dc.w   $0184,$000f,$0186,$000f
   dc.w   $0100,$2200,$0108,$0000
   dc.w   $0102,$0000,$0104,$0024
   dc.w   $0092,$0038,$0094,$00d0
   dc.w   $008e,$2c81,$0090,$f4c1
   dc.w   $00e0,$0006,$00e2,$0000
   dc.w   $00e4,$0006,$00e6,$2000

f   ds.w   256

ty1   dc.w   $b001,$fffe

   dc.w   $0100,$1200,$0102
scr   dc.w   $000f
   dc.w   $0180,$0000,$0182,$0fff
   dc.w   $0092,$0020,$0094,$00d8
   dc.w   $008e,$2071,$0090,$20c9

   dc.w   $00e0,$0006,$00e2,$4000

ty2   dc.w   $b435,$fffe

tf   ds.w   2*44*8

   dc.w   $ffff,$fffe

unpack
   lea   $70000,a2
   lea   $76000,a3

back   cmp.b   #$b2,(a2)
   beq   gogo
   move.b   (a2)+,(a3)+
   jmp   back
   
gogo   addq.l   #1,a2
   cmp.b   #1,(a2)
   bne   ejsl
   rts
ejsl   cmp.b   #0,(a2)
   bne   jip
   move.b   #$b2,(a3)+
   addq.l   #1,a2
   jmp   back

jip   move.b   (a2)+,tal2
fyll   move.b   (a2),(a3)+
   subq.b   #1,tal2
   bne   fyll
   addq.l   #1,a2
   jmp   back

tal2   dc.b   0
   EVEN

********************* COPCOL *********************

copcol
   
   move.l   #f,a0

   move.l   #64,d0
floop   move.l   #q,a1
   move.l   (a1)+,(a0)+
   move.l   (a1)+,(a0)+
   sub.l   #1,d0
   bne   floop   

   move.l   #64,d1
   move.b   #$47,d0
   move.l   #f,a0

ffloop   move.b   d0,(a0)
   add.l   #8,a0
   add.l   #1,d0
   sub.l   #1,d1
   bne   ffloop

   move.l   #2,d0
   move.l   #f+6,a0
f__loop   move.l   #32,d1
   move.l   #ff,a1
   
f_loop   move.w   (a1)+,(a0)
   add.l   #8,a0
   
   sub.l   #1,d1
   bne   f_loop

   sub.l   #1,d0
   bne   f__loop
   
   rts


ff   dc.w   $620,$720,$730,$830,$840,$950,$a50,$a60
   dc.w   $b70,$b80,$c90,$d90,$da0,$ec0,$ec0,$fe0
   dc.w   $fe0,$ec0,$ec0,$da0,$d90,$c90,$b80,$b70
   dc.w   $a60,$a50,$950,$840,$830,$730,$720,$620
   
q   dc.w   $4701,$fffe,$0184,$0000


scroll
   move.l   #63,d0
   move.l   #$76040+6+63*8,a0
   move.w   (a0),tmp
sloop   move.w   -8(a0),(a0)
   sub.l   #8,a0
   sub.l   #1,d0
   bne   sloop
   move.w   tmp,(a0)
   rts

tmp   dc.w   0

strole

   move.l   $dff004,d0
   asr.l   #8,d0
   and.l   #$1ff,d0
   cmp.l   #$ff,d0
   bne   strole
   rts

scroll2   

   cmp.w   #9,$7624a
   bne   bort

   move.l   gfxbase,a6
   move.l   #rastport,a1
   move.l   #8,d0
   move.l   #0,d1
   move.l   #0,d2
   move.l   #0,d3
   move.l   #384,d4
   move.l   #20,d5
   jsr   -396(a6)

   move.w   #$f,$7624a
   jsr   tecken

   rts
bort   sub.w   #2,$7624a
   rts
   
tecken

   move.l   gfxbase,a6
   move.l   #rastport,a1
   move.l   #344,d0
   move.l   #10,d1
   jsr   -240(a6)

   move.l   #rastport,a1
ww   move.l   #scrtext,a0
   add.l   pek,a0
   add.l   #1,pek
   cmp.b   #$ff,(a0)
   bne   bb
   move.l   #0,pek
   jmp   ww
bb   move.l   #1,d0
   jsr   -60(a6)

   rts

pek   dc.l   0

scrtext

   dc.b "THIS IS THE MEGA COLLECTION. MADE BY THE OUTRUNNERS IN THE EXCITING YEAR"
   dc.b " OF 1988 !! LET US ALL BE FRIENDS. HAPPY NEW YEAR TO:"
   dc.b " KENT-TEAM, DANISH GOLD, BUILDEX, ABC, DEFJAM, THE LIGHT "
   dc.b "CIRCLE, HOTLINE, NORTHERN LIGHTS, THE MOVERS, SOFTKILLER CREW, DEADLY FRIENDS, "
   dc.b "PENTAGON, POWERSLAVES, THE SYNDICATE DENMARK, DUECO, CRACKMAN CREW, FAIRLIGHT, "
   dc.b "CROME, NCC, GCA, TEP, ANTITRAX, FESSORS AND AT LAST TO TRIAD."
   dc.b "TRY TO FIND THE SECRET PAGE. IT'S EASY. BYE FROM THE OUTRUNNERS."
   dc.b "                      ",$ff
   EVEN



   
*********************** scrolltextf ********************

copcol2

   move.l   #tf,a0
   move.l   #44*8,d0
tfloop   move.l   #$01820000,(a0)+
   sub.l   #1,d0
   bne   tfloop      

   move.l   #tf+2,a1
   move.l   #11,d0
tflopp   move.l   #tff,a0
   move.l   #32,d1
tflop   move.w   (a0)+,(a1)
   add.l   #4,a1
   sub.l   #1,d1
   bne   tflop         
   sub.l   #1,d0
   bne   tflopp
   
   rts

tff   dc.w   $620,$720,$730,$830,$840,$950,$a50,$a60
   dc.w   $b70,$b80,$c90,$d90,$da0,$ec0,$ec0,$fe0
   dc.w   $fe0,$ec0,$ec0,$da0,$d90,$c90,$b80,$b70
   dc.w   $a60,$a50,$950,$840,$830,$730,$720,$620

tfmove

   tst.w   nu
   beq   ner

upp   move.l   #qqq,a0
   add.l   peka,a0
   cmp.b   #$ff,(a0)
   bne   ubort
   move.w   #$0,nu
   add.l   #1,peka
   jmp   ner
ubort   move.b   (a0),d0
   sub.b   d0,$76240
   sub.b   d0,$7626c
   sub.l   #1,peka
   rts

ner   move.l   #qqq,a0
   add.l   peka,a0
   cmp.b   #$ff,(a0)
   bne   nbort
   move.w   #$ffff,nu
   sub.l   #1,peka
   jmp   upp
nbort   move.b   (a0),d0
   add.b   d0,$76240
   add.b   d0,$7626c
   add.l   #1,peka
   rts
      
qqq   dc.b   $ff
rorelse   dc.b   0,0,1,1,1,1,1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,5,5,6,6
www   dc.b   $ff

peka   dc.l   1
nu   dc.w   0

********************** Open gralib **********************

opengralib

   move.l   $4,a6


   move.l   #grafname,a1
   move.l   #0,d0
   jsr   -408(a6)

   move.l   d0,gfxbase

   rts

grafname   dc.b   'graphics.library',0
      EVEN

gfxbase   dc.l   0

************************************************

settext

   move.l   #textat,a0
   move.l   #name,(a0)
   
   move.l   gfxbase,a6
   jsr   -72(a6)

   move.l   d0,a0
   move.l   #rastport,a1
   jsr   -66(a6)

   rts

textat   dc.l   0
   dc.w   8
   dc.w   0

name   dc.b   "topaz.font",0
   EVEN

dosss   dc.b   "dos.library",0
   EVEN

