#782

Ensign 01

Ensign

2.355 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRTBitmapBMAP

History

Released
December 1997
Code
Mr. Zool
Graphics
Kazso
Music
Roy (Laszlo Simon) — "Trance Suxx"
Group
Ensign — Hungary, founded September 1997

Ensign's sole ranked intro, released in December 1997 — just three months after the Hungarian group's founding in September of that year. Mr. Zool coded the intro while Kazso handled the graphics. The music is Roy's "Trance Suxx," a Laszlo Simon composition preserved in the HVSC. The tune's title reflects the trance and electronic music influences permeating the late-1990s C64 scene. Founded in Hungary, Ensign emerged during a period when the Eastern European scene was particularly active, with Hungarian groups contributing significantly to the C64's enduring community. The rapid turnaround from founding to releasing an intro — roughly ninety days — suggests the members had prior scene experience before forming Ensign. No Doc Snyder's page entry, Demozoo listing, or scene magazine coverage was found, indicating the group maintained a relatively low profile beyond their CSDb-documented releases.

Sources: CSDb · HVSC

ensign-01.asm 2.355 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:20
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0700  End: $47ff  (16640 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $3600 (13824)
// IRQ handler:  $363d (irq_363d)
// IRQ handler:  $ea31 (loc_ea31)
//
// Code: 2230 bytes, Data: 14410 bytes
// Labels: 212, Subroutines: 10
//
// Cross-references: all OK
// ============================================


// --- Region $1000-$1006 ---
.pc = $1000 "sub_1000"
// Referenced by: jsr from $361d

sub_1000:
        jmp loc_101d
// Referenced by: jsr from $3729

sub_1003:
        jmp loc_1085

dat_1006:
        .byte $4c                                   // L

// --- Region $101d-$101f ---
.pc = $101d "loc_101d"

loc_101d:
        jmp loc_1807

// --- Region $1050-$162e ---
.pc = $1050 "loc_1050"

loc_1050:
        lda $1aa1,y
        sta $1716
        lda $1aa2,y
        sta $1717
        sta $d418
        ldx #$00
        txa

loc_1062:
        sta dat_1718,x
        inx
        cpx #$86
        bne loc_1062
        ldx #$00
        lda #$01

loc_106e:
        sta $100c,x
        sta dat_173b,x
        inx
        cpx #$03
        bne loc_106e
        ldx #$00
        txa

loc_107c:
        sta $d400,x
        inx
        cpx #$18
        bne loc_107c
        rts

loc_1085:
        dec dat_1718
        bpl loc_1090
        lda $1716
        sta dat_1718

loc_1090:
        ldx #$00
        stx $1720
        jsr sub_10b0
        inx
        jsr sub_10b0
        inx
        jsr sub_10b0
        lda $171c
        sta $d416
        lda $1018
        ora $1723
        sta $d417
        rts
// Referenced by: jsr from $1095, $1099, $109d

sub_10b0:
        lda $100c,x
        beq loc_10c5
        lda $1716
        cmp dat_1718
        bne loc_10c5
        dec dat_173b,x
        lda dat_173b,x
        beq loc_10c8

loc_10c5:
        jmp loc_11f9

loc_10c8:
        lda $1707,x
        sta $f8
        lda $170a,x
        sta $f9

loc_10d2:
        ldy $1726,x
        lda ($f8),y
        bpl loc_1101
        cmp #$ff
        bne loc_10e5
        lda #$00
        sta $1726,x
        jmp loc_10d2

loc_10e5:
        cmp #$fe
        bne loc_10ef
        lda #$00
        sta $100c,x
        rts

loc_10ef:
        sec
        sbc #$a0
        bcs loc_10f8
        eor #$1f
        adc #$01

loc_10f8:
        sta $172c,x
        inc $1726,x
        iny
        lda ($f8),y

loc_1101:
        tay