#57

Ikari 19

Ikari

5.192 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRT

History

Released
15 April 1988
Code
Ash, Dave
Music
Jeroen Tel — "Reggae Example" / "Ikari Union"
Group
Ikari — United Kingdom, founded July 1987

A dual-coder intro with Ash and Dave sharing programming duties — unusual for crack intros where a single coder typically handled everything. Jeroen Tel contributed two of his compositions: "Reggae Example" and "Ikari Union," the latter becoming something of a group anthem that appeared in multiple Ikari intros. Tel's presence here reinforces the strong Dutch-British pipeline that defined Ikari's musical identity. Both SIDs are preserved in the HVSC under Tel's extensive directory. Released on 15 April 1988, this was one of several intros Ikari released in rapid succession during that spring. Doc Snyder's page preserves the full credits and scrolltext. The use of a dedicated group anthem ("Ikari Union") was a branding strategy — giving the group a recognizable audio signature across their many releases.

Sources: CSDb · docsnyderspage

ikari-19.asm 5.192 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:25
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $ffff  (63488 bytes)
// Crunched with Exomizer v2/v3 (with relocation) — depacked by emulation
// Packer entry: $0810 (via BASIC SYS 2064)
// Entry point:  $1a00 (6656)
// IRQ handler:  $1c20 (irq_1c20)
// IRQ handler:  $ea31 (irq_ea31)
//
// Code: 5904 bytes, Data: 57584 bytes
// Labels: 375, Subroutines: 17
//
// Cross-references: all OK
// ============================================


// --- Region $0c8d-$0cae ---
.pc = $0c8d "Program $0c8d"
        ora ($20,x)
        asl $05
        .byte $17,$20                               // slo $20,x // ILLEGAL
        ora $270f,y
        .byte $13,$20                               // slo ($20),y // ILLEGAL
        .byte $14,$0f                               // nop $0f,x // ILLEGAL
        jsr sub_1214
        ora #$01
        .byte $04,$2c                               // nop $2c // ILLEGAL
        asl $0c
        .byte $14,$2c                               // nop $2c,x // ILLEGAL
        .byte $13,$14                               // slo ($14),y // ILLEGAL
        ora ($12,x)
        .byte $13,$2c                               // slo ($2c),y // ILLEGAL
        .byte $0f,$12,$09                           // slo $0912 // ILLEGAL

scr_0cae:
        // === Screen RAM (1 bytes, $0cae-$0cae) ===
        .encoding "screencode_mixed"
        .text "o"
        .encoding "petscii_upper"

// --- Region $103e-$15be ---
.pc = $103e "loc_103e"

loc_103e:
        ldx #$02
        dec dat_19b1
        bpl loc_104b
        lda chr_195b
        sta dat_19b1

loc_104b:
        nop
        nop
        nop
        stx $ff
        lda $195c,x
        sta $1994
        tay
        lda dat_19b1
        cmp chr_195b
        bne loc_1071
        lda $1787,x
        sta $fb
        lda $178a,x
        sta $fc
        dec $1965,x
        bmi loc_1074
        jmp loc_11a2

loc_1071:
        jmp loc_11b2

loc_1074:
        ldy $195f,x
        lda ($fb),y
        cmp #$fe
        beq loc_1092
        cmp #$ff
        bne loc_109a
        lda #$00
        sta $1965,x
        sta $195f,x
        sta $1962,x
        sta $19b0
        jmp loc_1074

loc_1092:
        lda #$02
        sta $19b2
        jmp loc_194f

loc_109a:
        sta $19a5
        and #$80
        beq loc_10af
        lda $19a5
        and #$1f
        sta $198d,x
        inc $195f,x
        jmp loc_1074

loc_10af:
        lda $19a5
        and #$40
        beq loc_10c4
        lda $19a5
        and #$3f
        sta $19b4,x
        inc $195f,x
        jmp loc_1074

loc_10c4:
        lda $19a5
        asl
        tay
        lda $178d,y
        sta $fd
        lda $178e,y
        sta $fe
        lda #$00
        sta $197d,x
        ldy $1962,x
        sta $1980,x
        lda #$02
        sta $199f,x
        lda ($fd),y
        sta $1968,x
        sta $19a4
        and #$7f
        sta $1965,x
        inc $1962,x
        lda $19a4
        bpl loc_1109
        iny
        lda ($fd),y
        bpl loc_1103
        sta $197d,x
        jmp loc_1106

loc_1103:
        sta $1971,x

loc_1106:
        inc $1962,x