home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Assembler / dse-src6.dms / in.adf / BOUNCHSRCS.LZH / Reset.S < prev    next >
Encoding:
Text File  |  1988-09-01  |  2.4 KB  |  74 lines

  1. ;Denna lilla rutin {r skriven f\r er som vill l{ra er lite mer om 
  2. ;den underbara AMIGAN och dess reset system. Vid reset hoppar den in
  3. ;i ColdCapture vektorn, som ligger i $2a ExecBase, och {r vektorn
  4. ;inte 0 hoppar den till adressen som ligger d{r med ett JMP. Programm-
  5. ;et har en del kommentarer som g\r det l{ttare att f\rst} det hela {n
  6. ;om jag sitter h{r och skriver, s} hoppa in i programmet och b\rja
  7. ;att {ndra och kolla in registren(haha).
  8. ;********************************************************************
  9. ; OBS !!! DENNA RUTIN {R INGENTING F\R ALLA J..LA LAMERS, NI FATTAR
  10. ; {ND} INGENTING AV DEN !!!! Coding done by Niall of The Famous
  11. ; Cracking Crew in Sundsvall 1988 Telefon 060/11 00 63
  12. ;********************************************************************
  13.  
  14. run:
  15.     move.l    4,a6    ;Vi skall som vanligt anv{nda ExexBase
  16. ;******************
  17. ;    VEKTORER
  18. ;******************
  19.     lea     color(pc),a0    ;Vi l{gger in color i minnet
  20.     move.l    a0,$2a(a6)    ;N{mligen i ColdCapture Vektorn
  21.     move.w    #0,$24(a6)    ;LowMemChkSum, skall vara 0 f\r att
  22. ;******************        hoppa till color
  23. ;  HUVUDRUTIN
  24. ;******************
  25.     moveq    #0,d1        ;Summaregister
  26.     lea    $22(a6),a0    ;Addera 2 till v}r adress
  27.     moveq    #$18,d0        ;counter(d0) satt till 24
  28. sum:
  29.     add.w    (a0)+,d1    ;Testsumma i d1
  30.     dbra    d0,sum        ;Brancha s} l{nge under 24
  31.     not.w    d1        ;R{tta till ettkomplement
  32.     move.w    d1,$24(a6)    ;Ny LowMemCheckSum
  33.     moveq    #0,d1        ;Stoppa in!
  34.     lea    $22(a6),a0    ;\ka adressen med 34
  35.     moveq    #$18,d0        ;counter(d0) satt till 24
  36. sum2:    
  37.     add.w    (a0)+,d1
  38.     dbra    d0,sum2
  39.     not.w    d1
  40.     rts
  41. ;*****************
  42. ;   RESETRUTIN
  43. ;*****************
  44. ;Detta {r den f\rsta rutinen
  45. ;*****************
  46. color:
  47.     move.w    #65535,d0    ;F{rgcounter i d0
  48. color2:
  49.     move.w    d0,$dff180    ;L{gg in den i registret f\r att {ndra
  50.     dbf    d0,color2    ;sk{rmf{rg, brancha sedan
  51.     tst.b    $bfe001        ;Kolla om FIRE knappen trycks,
  52.     bpl    flash        ;i s} fall g} till flash, annars color
  53.     bra.s    color         ;Detta kan g\ras mycket j{vligare...
  54. ;*****************
  55. ;Detta {r den andra rutinen
  56. ;*****************
  57. flash:
  58.     move.l    #20,d1        ;20 g}ngers flashning
  59. flashd:
  60.     move.b    #3,$bfe201    ;K\r ig}ng CIAA DDRA
  61.     move.b    #2,$bfe001    ;S{tt leden till m\rk
  62.     move.l    #$7fff,d0;    ;V{nter{knare
  63. cntd:
  64.     dbra    d0,cntd        ;V{nta!
  65.     move.b    #0,$bfe001    ;S{tt leden till ljus
  66.     move.l    #$7fff,d0    ;V{nter{knare
  67. cnt:
  68.     dbra    d0,cnt        ;V{nta!
  69.     dbra    d1,flashd    ;G\r igen tills 20
  70.  
  71.     move.l    #color,$2a(a6)    ;F\r \ver color till adress
  72. ;    rts             Med denna rts h'nger den sig i reseten
  73.     jmp    (a5)        ;Hoppar till Amiga_ColdCapture
  74.