#596

Hokuto Force [HF] 24

Hokuto Force [HF]

3.108 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRTBitmapBMAP

History

Group
Hokuto Force — Italy

The third Hokuto Force intro in this batch — alongside HF-05 and HF-23. This particular intro generated active discussion on intros.c64.org, with five comments including exchanges between iAN CooG/HF (a core group member), Changeling/Abyss, and Twoflower in April 2009. The conversation between scene veterans suggests this intro held particular interest, possibly due to its visual or technical characteristics. No specific CSDb release match was identified, though Hokuto Force's extensive CSDb catalogue spans hundreds of entries. Founded in Italy, the group earned a reputation as one of the scene's premier preservation outfits, systematically re-releasing and fixing classic C64 software under their "To serve and preserve" motto. Doc Snyder's page documents their work with coders like Twilight, Wolf, and Domspitze creating new intro screens for these preservation releases.

Sources: docsnyderspage · intros.c64.org

hf-24.asm 3.108 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:47
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $54ff  (19712 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $5000 (20480)
// IRQ handler:  $50d8 (irq_50d8)
//
// Code: 2549 bytes, Data: 17163 bytes
// Labels: 315, Subroutines: 11
//
// Cross-references: all OK
// ============================================


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

sub_1000:
        jmp loc_1040
// Referenced by: jsr from $5116

sub_1003:
        jmp loc_10da

dat_1006:
        .byte $01                                   // .

// --- Region $1040-$136a ---
.pc = $1040 "loc_1040"

loc_1040:
        asl
        asl
        asl
        tay
        ldx #$00

loc_1046:
        lda $17ef,y
        sta $174e,x
        sta $1754,x
        lda $17f0,y
        sta $1751,x
        sta $1757,x
        iny
        iny
        inx
        cpx #$03
        bne loc_1046
        ldx #$00
        stx $174d
        lda $17ef,y
        sta $100b
        sta $177b
        sta $177c
        sta $177d

loc_1073:
        sta $17d9,x
        inc $174d
        lda $100b
        clc
        adc $17ef,y
        sta $100b
        clc
        adc $174d
        inx
        cpx #$10
        bne loc_1073
        lda $1020
        beq loc_10bc
        ldx #$02

loc_1093:
        lda $17f0,y
        sta $174d
        and $175a,x
        sta dat_1006,x
        dex
        bpl loc_1093
        bit $174d
        bpl loc_10bc
        ldx #$00

loc_10a9:
        lda $17f1,y
        sta $1754,x
        lda $17f2,y
        sta $1757,x
        iny
        iny
        inx
        cpx #$03
        bne loc_10a9

loc_10bc:
        ldy #$00
        tya

loc_10bf:
        sta $d400,y
        iny
        cpy #$1b
        bne loc_10bf
        tay

loc_10c8:
        sta $177e,y
        sta $1766,y
        iny
        cpy #$0c
        bne loc_10c8
        lda $1009
        sta $d418
        rts

loc_10da:
        ldx #$02

loc_10dc:
        lda $1769,x
        cmp #$02
        bne loc_110f
        ldy $1772,x
        lda $1908,y
        ldy $1760,x
        sta $d405,y
        ldy $1772,x
        lda $1909,y
        ldy $1760,x
        sta $d406,y
        lda $189a
        beq loc_1109
        lda $1899
        sta $d404,y
        jmp loc_110f

loc_1109:
        lda $1778,x
        sta $d404,y

loc_110f:
        dex