home *** CD-ROM | disk | FTP | other *** search
- ;Denna lilla rutin {r skriven f\r er som vill l{ra er lite mer om
- ;den underbara AMIGAN och dess reset system. Vid reset hoppar den in
- ;i ColdCapture vektorn, som ligger i $2a ExecBase, och {r vektorn
- ;inte 0 hoppar den till adressen som ligger d{r med ett JMP. Programm-
- ;et har en del kommentarer som g\r det l{ttare att f\rst} det hela {n
- ;om jag sitter h{r och skriver, s} hoppa in i programmet och b\rja
- ;att {ndra och kolla in registren(haha).
- ;********************************************************************
- ; OBS !!! DENNA RUTIN {R INGENTING F\R ALLA J..LA LAMERS, NI FATTAR
- ; {ND} INGENTING AV DEN !!!! Coding done by Niall of The Famous
- ; Cracking Crew in Sundsvall 1988 Telefon 060/11 00 63
- ;********************************************************************
-
- run:
- move.l 4,a6 ;Vi skall som vanligt anv{nda ExexBase
- ;******************
- ; VEKTORER
- ;******************
- lea color(pc),a0 ;Vi l{gger in color i minnet
- move.l a0,$2a(a6) ;N{mligen i ColdCapture Vektorn
- move.w #0,$24(a6) ;LowMemChkSum, skall vara 0 f\r att
- ;****************** hoppa till color
- ; HUVUDRUTIN
- ;******************
- moveq #0,d1 ;Summaregister
- lea $22(a6),a0 ;Addera 2 till v}r adress
- moveq #$18,d0 ;counter(d0) satt till 24
- sum:
- add.w (a0)+,d1 ;Testsumma i d1
- dbra d0,sum ;Brancha s} l{nge under 24
- not.w d1 ;R{tta till ettkomplement
- move.w d1,$24(a6) ;Ny LowMemCheckSum
- moveq #0,d1 ;Stoppa in!
- lea $22(a6),a0 ;\ka adressen med 34
- moveq #$18,d0 ;counter(d0) satt till 24
- sum2:
- add.w (a0)+,d1
- dbra d0,sum2
- not.w d1
- rts
- ;*****************
- ; RESETRUTIN
- ;*****************
- ;Detta {r den f\rsta rutinen
- ;*****************
- color:
- move.w #65535,d0 ;F{rgcounter i d0
- color2:
- move.w d0,$dff180 ;L{gg in den i registret f\r att {ndra
- dbf d0,color2 ;sk{rmf{rg, brancha sedan
- tst.b $bfe001 ;Kolla om FIRE knappen trycks,
- bpl flash ;i s} fall g} till flash, annars color
- bra.s color ;Detta kan g\ras mycket j{vligare...
- ;*****************
- ;Detta {r den andra rutinen
- ;*****************
- flash:
- move.l #20,d1 ;20 g}ngers flashning
- flashd:
- move.b #3,$bfe201 ;K\r ig}ng CIAA DDRA
- move.b #2,$bfe001 ;S{tt leden till m\rk
- move.l #$7fff,d0; ;V{nter{knare
- cntd:
- dbra d0,cntd ;V{nta!
- move.b #0,$bfe001 ;S{tt leden till ljus
- move.l #$7fff,d0 ;V{nter{knare
- cnt:
- dbra d0,cnt ;V{nta!
- dbra d1,flashd ;G\r igen tills 20
-
- move.l #color,$2a(a6) ;F\r \ver color till adress
- ; rts Med denna rts h'nger den sig i reseten
- jmp (a5) ;Hoppar till Amiga_ColdCapture