START:
        dc.b    'DOS',0
        dc.l    $E85DF5A9
        dc.l    "!HF!"

        MOVEA.L 4.w,A6
        LEA     (IORequest,PC),A2
        MOVE.L  A1,(A2)
        bsr     my_code_chip                            ; CHIP holen
        bsr     my_code_any
        MOVEA.L (IORequest,PC),A1
        LEA     ($1C,A1),A0
        MOVE.W  #2,(A0)+
        CLR.W   (A0)+
        CLR.L   (A0)+
        MOVE.L  #$1200,(A0)+
        MOVE.L  (ChipRamPtr,PC),D0
        ADDI.L  #$10000,D0
        MOVE.L  D0,D1
        SWAP    D1
        CMPI.W  #6,D1
        BMI.B   Chip_Check_Ok
        CMPI.W  #8,D1
        BPL.B   Chip_Check_Ok
        ADDI.L  #$20000,D0
Chip_Check_Ok   
        MOVE.L  D0,(A0)+
        MOVEA.L D0,A2
        MOVE.L  #$400,(A0)+
        JSR     (-$1C8,A6)
        MOVEA.L #$DFF000,A6
        MOVE.W  #$7FFF,($9A,A6)
        MOVE.W  #$7FFF,($96,A6)
        MOVE.B  #$7F,($BFED01).L
        MOVE.W  #$7FFF,($9C,A6)
        MOVEA.L (FastRamPtr,PC),A3
        JMP     (A2)

ChipRamPtr
        dc.l    $15000
FastRamPtr
        dc.l    0
IORequest
        BLK.L   100



My_Code_Any:
        lea     fastramptr(pc),a4
        moveq   #4,d1
        move.l  #48000,d0
        jsr     -198(a6)                ; Try to get fastram
        move.l  d0,(a4)
        beq     .nn
        rts
.nn:    lea     $88000,a1       
        bsr     Allocate_ABS
        rts

My_Code_Chip:
        lea     chipramptr(pc),a4
        lea     $15000,a1
        bsr     Allocate_ABS
        beq     .next_try
        rts
.next_try:
        lea     $1a000,a1
        bsr     Allocate_ABS
        rts

Allocate_ABS:
        move.l  #$48000,d0
        jsr     -204(a6)
        move.l  d0,(a4)                 ; Pointer initialised
        rts


Text:   dc.b    " ZeeWolf-II Cracked by Icarus/HF ... "
        dc.b    " Trainer available from Siriax/HF ... "
        dc.b    " Small loader fix by Shadow/HF (17/12/95) "


        blk.b   1000,0
