#324

Alpha Flight 1970 [AFL] 05

Alpha Flight 1970 [AFL]

4.392 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRTBitmapBMAP

History

Group
Alpha Flight 1970 — Germany, founded April 1985

The fifth numbered intro from Alpha Flight 1970 (AFL), ranked #324 on intros.c64.org. The CSDb search under the full group name did not return direct matching releases, though Alpha Flight 1970 is one of the best-known German cracking groups and is extensively represented in the CSDb catalogue under other search paths. Founded in April 1985, the group's longevity — spanning multiple decades — is unmatched by most contemporaries. No individual credits for code or music have been identified for this particular release. A 2004 comment from Xenox of Alpha Flight and a 2010 comment from Jazzcat of Onslaught confirm ongoing community interest. Alpha Flight 1970 is the most represented group in these rankings, with entries including #41 AFL Intro #9, #131 AFL Intro #8, #184 AFL Intro #13, #228 AFL Intro #7, and #294 AFL Intro #2. The "1970" suffix remains a distinctive identifier in the scene.

Sources: intros.c64.org

afl-05.asm 4.392 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:07
// 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:  $0900 (2304)
// IRQ handler:  $0999 (irq_0999)
// IRQ handler:  $3ac3 (irq_3ac3)
//
// Code: 4081 bytes, Data: 59407 bytes
// Labels: 419, Subroutines: 22
//
// Cross-references: all OK
// ============================================


// --- Region $0860-$086e ---
.pc = $0860 "loc_0860"

loc_0860:
        lda $dc01
        cmp #$ef
        bne loc_0860
        lda #$00
        sta $d015
        jmp loc_3a00

// --- Region $0900-$0a78 ---
.pc = $0900 "main_0900"
main_0900: {
        sei
        jsr $fda3
        jsr $fd15
        jsr $ff5b
        cli
        lda #$00
        sta $d020
        sta $d021
        sta $0286
        lda #$7b
        sta $d011
        ldx #$00
        jsr sub_1103
        lda #$00
        sta $03
        sta $04
        lda #$80
        sta $05
        sta $06
        ldx #$00
        lda #$00
loop1:
        sta $0400,x
        sta $0500,x
        sta $0600,x
        sta $0700,x
        lda #$00
        sta $d800,x
        sta $d900,x
        sta $da00,x
        sta $db00,x
        inx
        bne loop1
        ldx #$00
        lda #$08
loop2:
        sta $d8a0,x
        sta $da58,x
        inx
        cpx #$f0
        bne loop2
        ldx #$00
        lda #$01
loop3:
        sta $d9b8,x
        sta $da08,x
        inx
        cpx #$28
        bne loop3
        jsr sub_2f00
        nop
        nop
        nop
        sei
        lda #$7f
        sta $dc0d
        lda #$00
        sta $dc0e
        lda #$01
        sta $d01a
        lda #$00
        sta $d012
        lda #$7b
        sta $d011
        lda #$99
        sta $0314
        lda #$09
        sta $0315
        cli
        jmp loc_0860
}

irq_0999:
        lda #$00

loc_099b:
        cmp $d012
        bne loc_099b
        lda #$1b
        sta $d011
        lda #$18
        sta $d018
        lda #$08
        sta $d016
        lda #$00
        sta $d020
        sta $d021
        jsr sub_30f3
        jsr sub_1100
        jsr sub_2db0
        lda #$51

loc_09c2:
        cmp $d012
        bne loc_09c2
        ldy #$10

loc_09c9:
        dey
        bne loc_09c9
        lda #$18
        sta $d018
        lda #$d8
        sta $d016
        lda #$0f
        sta $d021
        lda #$0b
        sta $d022
        lda #$0c
        sta $d023
        lda $04
        sta $d016
        jsr sub_2b4a
        nop
        nop