If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!
This article has a talk page!

Super New Year Cart 15-in-1

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Super New Year Cart 15-in-1

Also known as: 15-in-1
Developer: Hummer Team
Publisher: Hong Jing
Platform: Unlicensed NES
Released in TW: 2005


SourceIcon.png This game has uncompiled source code.
DevTextIcon.png This game has hidden development-related text.
MusicIcon.png This game has unused music.
SoundIcon.png This game has unused sounds.
TextIcon.png This game has unused text.


Super New Year Cart 15-in-1 is a multicart released in 2005 with a word salad for a name which contains Hummer Team's all time "classics", including Somari, Titenic and more.

Unused Audio

The menu uses the same version of Hummer's sound engine as Donkey Kong Country 4, and as a result some of its music and sound effects are still here, albeit completely unused. The menu's music can be replaced with them by using FCEUX cheat 070D:XX, with XX being replaced with with 01-1D for sound effects and 21-2F for music.

Unused Text

Street Fighter IV Leftover

At 0xC0B0, 0x1C0B0, 0x6C0B0, and 0x7C0B0 is the credits from Hummer's Street Fighter IV, partially overwritten:

APHIC
     
     MONTIGO K
     LIGHT LIN
   MUSIC COMPOSE
    RICHARD C
     B B KING
    SOUND DESING
     JAMS LUE
             
      DIRECTOR
ICHAEL K
              
   SPECIAL THANK
    MANTAL SAN
                
           
     THE   END                  

Compiler Output

At 0x14EBD and 0x74EBD are what seems to be output from the compiler. It seems to be the same output, though.

           Lines Assembled :  2947             Assembly Errors :  0
        ------------------------------------------------
                       Input  Filename : main.asm
                       Output Filename : main.obj

At 0x319BD there's a different compiler output, likely for the game Rings, a Panda Adventure hack split into multiple "games" on this multicart:

           Lines Assembled :  3819             Assembly Errors :  0
        ------------------------------------------------
                       Input  Filename : rigame.ASM
                       Output Filename : rigame.obj

Source Code

Hmmm...
To do:
There's much more in the ROM than what's here.

Around 0xC88A in the ROM starts a huge amount of source code for the menu and some of the games.

        LDA     ?NextNoTbl1,X
        STA     ItemNo
        JMP     SetSprCursor
?NextNoTbl1:
    DB †“dQ  00�   ,$05,$03,$04
CursorDown:
        LDX     ItemNo
        LDA     PageNo
        CMP     #$03
        BCC     ?1
        BEQ     ?2
       ÿÿDA     ?NextNoTbl,X
        STA     ItemNo
        JMP     SetSprCursor
?NextNoTbl:
    DB  $01,$02,$03,$04,$05,$06,$07,$00,$09,$0A,$0B,$0C,$0D,$0ÿÿ$0    t•dQ       LDA     ?NextNoTbl0,X
        STA     ItemNo
        JMP     SetSprCursor
?NextNoTbl0:
    DB  $01,$02,$03,$00,$05,$06,$07,$0±•dQ  
 �   Ü—dQDA     ?NextNoTbl1,X
        STA     ItemNo
        JMP     SetSprCursor
?NextNoTbl1:
    DB  $01,$02,$00,$04,$05,$03
CursorLeft:
�˜dQ    �       ItemNo
        LDA     PageNo
        CMP     #$03
        BEQ     ?2
        BCS     ?1
        LDA     NextNoTbl00,X
        STA    ÿÿte    
        JMP     SetSprCursor
?1      LDA     NextNoTbl0,X
        STA     ItemNo
        JMP     SetSprCursor
?2      LDA     NextNoTbl01,Xÿÿ        STA     ItemNo
        JMP     SetSprCursor
EntryGame       ;2
        LDA     ItemNo
        ASL     A
        STA     a0
        ASL  ÿÿ A    DšdQ  CLC
        ADC     a0
        STA     a0
        LDA     PageNo
        ASL     A
        TAY
        LDA     ?SwitchGameTbl,Y
šdQ    �   ¬œdQ      ADC     a0
        STA     r0
        LDA     ?SwitchGameTbl+1,Y
        ADC     #$00
        STA     r0+1


        LDY   éœdQ  
�   �ŸdQLDA     (r0),Y
        STA     rg6000Buf,Y
        INY
        CPY     #$06
        BCC     ?1


        LDX     #$00
?2      LDQŸdQ  Ne�   |¡dQint,x
        STA     $0300,X
        INX
        CPX     #EndEntryPoint-NewEntryPoint
        BCC     ?2
        JMP     $0300

¹¡dQ  hG�   ä£dQ        DW      ?SwitchGame0C,?SwitchGame0B,?SwitchGame0A,?SwitchGame0D,?SwitchGame00
?SwitchGame0C
        DB      $00,$20,$1F,$F0,$0^¤dQ  ;$�   L¦dQIC)
        DB      $00,$10,$0E,$F0,$00,$00 ;$01(PINK of RINGS)
        DB      $80,$40,$0E,$F0,$00,$00 ;$02(WAR)
        DB      $00‰¦dQ  0E�   ,$00,$02 ;$03(Duck0 of RINGS)
        DB      $00,$10,$0E,$F0,$01,$02 ;$04(Duck1 of RINGS)
        DB      $00,$10,$0E,$F0,$01,$00 ;$05(PINK1 ÿÿ R    )
        DB      $00,$10,$0E,$F0,$02,$00 ;$06(PINK2 of RINGS)
        DB      $00,$10,$0E,$F0,$03,$00 ;$07(PINK3 of RINGS)
?SwitchGame0B
  ÿÿ            $00,$60,$3F,$E0,$00,$00 ;$00(SONIC)
        DB      $00,$10,$0E,$F0,$00,$00 ;$01(PINK of RINGS)
        DB      $80,$40,$0E,$F0,$00,$00 ÿÿ02    )
        DB      $00,$10,$0E,$F0,$00,$02 ;$03(Duck0 of RINGS)
        DB      $00,$10,$0E,$F0,$01,$02 ;$04(Duck1 of RINGS)
        DB      $ÿÿ,$    ´¨dQF0,$01,$00 ;$05(PINK1 of RINGS)
        DB      $00,$10,$0E,$F0,$02,$00 ;$06(PINK2 of RINGS)
        DB      $00,$10,$0E,$F0,$03,$00 ;.©dQ  NK�   �«dQGS)
?SwitchGame0A
        DB      $00,$50,$2F,$F0,$00,$00 ;$00(SF4)
        DB      $00,$10,$0E,$F0,$00,$00 ;$01(PINK of RINGS)
    Y«dQ    �   „­dQ$40,$0E,$F0,$00,$00 ;$02(WAR)
        DB      $00,$10,$0E,$F0,$00,$02 ;$03(Duck0 of RINGS)
        DB      $00,$10,$0E,$F0,$01,$02 ;$0Á­dQ  1 �   ì¯dQ)
        DB      $00,$10,$0E,$F0,$01,$00 ;$05(PINK1 of RINGS)
        DB      $00,$10,$0E,$F0,$02,$00 ;$06(PINK2 of RINGS)
        D)°dQ   $�   T²dQ0E,$F0,$03,$00 ;$07(PINK3 of RINGS)
?SwitchGame00
;Chr*$400,Pro*$2000,HIHG*$40000(Chr) Low(Chr Size),Program Size ,$110,$111
        ‘²dQ    �   ¼´dQ$2F,$F0,$00,$00 ;$00(SF4)
        DB      $00,$60,$3F,$E0,$00,$00 ;$01(SONIC)
        DB      $00,$10,$0E,$F0,$00,$00 ;$02(PINK of RIN6µdQ    �   $·dQ     $80,$40,$0E,$F0,$00,$00 ;$03(WAR)
        DB      $00,$20,$1F,$F0,$00,$00 ;$04(TITANIC)
        DB      $00,$20,$1F,$F0,$01,$00 ;a·dQ  TA�   Œ¹dQ      DB      $00,$10,$0E,$F0,$00,$02 ;$06(Duck0 of RINGS)
        DB      $00,$10,$0E,$F0,$01,$02 ;$07(Duck1 of RINGS)
        DB    CºdQ  $1�   E,$F0,$01,$00 ;$08(PINK1 of RINGS)
        DB      $00,$10,$0E,$F0,$02,$00 ;$09(PINK2 of RINGS)
        DB      $00,$10,$0E,$F0,$03,$00 ;$0A(PÿÿK3    RINGS)
        DB      $00,$10,$0E,$F0,$00,$01 ;$0B(RINGS0)
        DB      $00,$10,$0E,$F0,$01,$01 ;$0C(RINGS1)
        DB      $00,$10,$0E,ÿÿ0,    ô»dQ;$0D(RINGS2)
        DB      $00,$10,$0E,$F0,$03,$01 ;$0E(RINGS3)
?SwitchGame0D
        DB      $00,$50,$2F,$F0,$00,$00 ;$00(SF4)
  1¼dQ  DB�   \¾dQ0,$60,$3F,$E0,$00,$00 ;$01(SONIC)
        DB      $00,$10,$0E,$F0,$00,$00 ;$02(PINK of RINGS)
        DB      $80,$40,$0E,$F0,$00,$00 ™¾dQ  AR�          DB      $00,$20,$1F,$F0,$00,$00 ;$04(TITANIC)
        DB      $00,$10,$0E,$F0,$01,$02 ;$05(Duck1 of RINGS)
NewEntryPoint:
        LDA ÿÿ      00Buf+4
        STA     $0110
        LDA     rg6000Buf+5
        STA     $0111
        LDY     #$00
?1      LDA     rg6000Buf,Y
        Sÿÿ      ÄÀdQ
        INY
        CPY     #$04
        BCC     ?1
        JMP     ($FFFC)
        NOP
        NOP
EndEntryPoint:

;JumpMenuT�ÁdQ  C �   ,ÃdQ       DW      $6010,$6020,$6040,$6080
;       DW      $6100,$6200,$6400,$6800



;;;;;;library
RamProgram:
        .ENDS

    ¦ÃdQ  MB�   ”ÅdQ



�   EOR     #$01
        STA     page0_1
        RTS
?1      LDA     tog1
        AND     #kA+kB+kST
        BEQ     ?2
    ÑÅdQ  A �   #$0E
        STA     _Sound
        INC     case
        RTS
?2      LDA     tog1
        AND     #kU
        BEQ     ?3
;;;;Up
        ÿÿP     üÇdQorUP
?3      LDA     tog1
        AND     #kD
        BEQ     ?4
        JMP     CursorDown
?4      LDA     tog1
        AND     #vÈdQ    �   BEQ     ?5
        JMP     CursorLeft
?5      LDA     tog1
        AND     #kR
        BNE     ?6
        RTS
?6
;;;Right Mode....
     ÿÿ L    dÊdQtemNo
        LDA     PageNo
        CMP     #$03
        BEQ     ?9
        BCS     ?7
        LDA     NextNoTbl00,X
        JMP �ËdQ  
�   ÌÌdQ    LDA     NextNoTbl01,X
        JMP     ?8
?7      LDA     NextNoTbl0,X
?8      STA     ItemNo
SetSprCursor
        L

At 0xF1BF is a small fragment of code:

,$00,$1E
        DB      $06,$05,$00,$04,$1F‰ódQ  09�   ´õdQ
        DB      $8

At around 0xF7B1 there's more!

 $8000
                sty     $8001
    §�\a    �   Ò�\a
                iny
                stx     $8000
                sty     $8001
                inx
                iny
          L�\a  st�     $8000
                sty     $8001
                rts
;=====================================================================
;Dragon runÿÿng    .
;=====================================================================
Irq2:
                lda     Irq_Cnt
                bne     Irq21ÿÿ;     
                irqoff
                irqon
                lda     #$78
                irqlong
;
                ldy     #$02
?1
   ÿÿ      :�\a dey
                bne     ?1
;
                lda     $2002
                lda     scr2_x
                sta     $2005
     ñ�\a    �   da     #$00
                sta     $2005
                lda     rg2000
                and     #%11111100
                ora     page0_1+ÿÿ
     ¢	\a       sta     $2000
;;;Switch Bank
                ldx     #$00
                stx     $8000
                lda     #$DC
       Y
\a    �        $8001
                inx
                stx     $8000
                lda     #$DE
                sta     $8001

;
              ÿÿin      Irq_Cnt
                rts
;
Irq21:
                irqoff

                ldy     #$02
?1
                dey
                bne ÿÿ      
�\a               lda     $2002
                lda     #$00
                sta     $2005
                sta     $2005
              „�\a    �   r�\a
                and     #%11111110
                ora     page0_1
                sta     $2000
;
                lda     #$00
 f�\a    �      sta     Irq_Cnt
                rts
;
;=====================================================================
;Strike Mouse
;============ÿÿ==    =================================================
Irq3:
                irqoff
;
                ldy     #$02
?1
                dey
    ÿÿ      Ú�\abne     ?1
;
             ;;;ldy     #$60
                ldy     #$78
                ldx     #$8!ó òYõ             stx     $8000
��\a    �   B�\asty     $8001
                inx
                iny
                stx     $8000
                sty     $8001
                i?�\a    �   ª�\a    iny
                stx     $8000
                sty     $8001
                inx
                iny
                stx    ç�\a  
�               sty     $8001
                lda     #$00
                sta     Irq_Cnt
                rts

;==============================ÿÿ==    ===============================
;
;=====================================================================
Irq5:
                irqoff
     ÿÿ         lda     #$00
                sta     Irq_Cnt
;
        ;;;     lda     Scr_mapx
        ;;;     sta     $2005
                rts
;====ÿÿ==    =========================================================
;
;=====================================================================
Irq6:
   ÿÿ      ��\a lda     Irq_Cnt
                bne     Irq61
; Middle Area
                irqoff
                irqon
                lda     #O�\a    �   z�\a     irqlong
;
                ldy     #$02
?1
                dey
                bne     ?1
;;;;
                ldy     #$88
ô�\a    �   ;;;;ldy     #$8C
        ;;;;;;;;ldy     #$90
                ldx     #$82
                stx     $8000
                sty     $8001
    ÿÿ          inx
                iny
                stx     $8000
                sty     $8001
                inx
;;;;;           ldy     mid_bnkÿÿ                ldy     #$80
                stx     $8000
                sty     $8001
                inx
                iny
                ÿÿx     $8000
                sty     $8001

                inc     Irq_Cnt
                rts
;
Irq61:
;;;Bottom
                irqoff
    ÿÿ      â�\aldy     #$02
?1              dey
                bne     ?1
;
                ldy     #$84
                ldx     #$82
          P�\a  st�   J�\a000
                sty     $8001
                inx
                iny
                stx     $8000
                sty     $80‡�\a    �   ²!\a    in

At 0x109A8 there's a bunch of variable names:

ArroW
BROWSE
BackCursorNo
BallFunNo
BgSprPal
CHREGH
CheckKey
Chreg0
Chr
reg2
Chreg3
Chreg4
Chreg4h
Chreg5
Chreg5h
Chreg6
Chreg6h
Chreg7h
ChregIh
ChregIl
ChregTh
ClrSprite
ClrVram
Color00
ColorT
OldCol
CursorDown
CursorFlg
CursorLeft
CursorUP
CursorX
CursorY
DebugBuf
DogFunNo
ENEMYNO
EndEntryPoint
EntryGame
FillPage
FillText
GameRoutine
GetMenuPage
Gun1X
Gun1Y
Gun2X
Gun2Y
HA6611
Incad
Irq0
Irq1
Irq2
Irq21
Irq3
Irq4
Irq5
Irq6
Irq6l5
IrqCtl
IrqTbl
Irq_Cnt
Irq_Ctl
Irq_Line
Irq_Sub
ItemCnt
ItemNo
ItÿÿUs
ItemUseY
J_ABUTTON
J_BBUTTON
J_DOWN
J_LEFT
J_RIGHT
J_SELECT
J_SÿÿRT
J_UP
Joy1
Joy2
JoyOne
KeyIndex
LETTER
LOOPING
LightGunX
Lÿÿht
MANLIFE
MASCR01
MASCR02
MBSCR01
MBSCR02
MC3
MCSCR01
MCSCR02
DSCR01
MDSCR02
MEMORY
MSCR01
MSCR02
Main
MainFlow
MaxItem
NScr_mÿÿx
NUMBER
NewEntryPoint
NewLocation
NextNoTbl0
NextNoTbl00
NextNoTbl01
Nmi
rd
NullBuffer
ONLYBOSS
PRG_Reg
PRIORITY
PageAddress
PageNo
PageTbl
P
dexNo
READ4017
RamProgram
SOONPASS
SPDS105A
SPEED
SPTP
SZLMAX
SZÿÿIN
ScanPort
Scr_mapx
Scr_mapy
SelPal
SelectSub
SetSprCursor
Sound
Sounÿÿni
SwitchDA
TEST
TESTPAD
TestSndNo
TestSoundMode
TestSprBuf
TitleInit
ÿÿit
op
TwoBank
UPMIN
_DBuffer
_Music
_Pause
_SBuffer
_Sound
a0
a
a2
a3
a4
atmp
ball_flg
ball_size
bally_project
bankcnt
nk
c0
case
cleanidle
cleanmode
clp00
col_msk
col_ndx
cs000
datah
datah1
datah2
datal
datal1
datal2
dhi
dhv
dlo
ag_flg
dog_flg2
dogmode
dogsndx
dogx_dir
dogx_pos
dogxf_

do‚ÿMAIN
F200
0
100
300
400
500
600
FFFA
E000

HZ

fade_wcnt
fadetbl
fp00
fp10
fp20
fp40
fp50
joytemp
kA
kB
kD
kL
kR
kSE
kST
kU
key
keycnt
keyreg
lastpad
lastpos
lasttog
name
nmi_cnt
noa
old_nmi
p0
pad1
page0_1
prtidx
r0
r01fdc6
r01fdcb
r01fde0
r01fded
r1
r2
random
rg2000
rg2001
rg6000Buf
s200ndx
sbuflen
sch
scl
scm
scr2_x
scr_x
scr_y
second
sfc
sflash
shi
sindex
smt
sndx
sndx2
sndxprt
snm
sno
sprt
sptmode
stayidle
swd
sxh
sxhmap
sxl
sxlmap
syh
syhmap
syl
sylmap
t0
tall
tog1
tr0
tr1
tr2
tr3
tr4
tr5
tubsndx
w0
w1
wait_1v
wide
x0
x1
x2
x_dir
x_pos
x_speed
xadd
xf_pos
xtemp
y0
y1
y2
y_acc
y_pos
y_speed
yadd
yf_pos
ytemp
z_acc
z_dir
z_pos
z_speed
zf_pos
zf_speed
dogz_speed
Irq_Ctl
fadetbl
Irq_Sub
dogy_project
a0
a1
a2
c0
a3
a4
page0_1
col_ndx
ItemCnt
ItemNo
bankcnt
CursorX
CursorY
dog_flg
p0
sbuflen
r0
sflash
lastpad
r1
r2
t0
random
dogmode
col_msk
old_nmi
w0
keycnt
nmi_cnt
x0
w1
x1
y0
bnkreg
keyreg
x2
y1
dogsndx
y2
second
x_speed
y_speed

At 0x14CBD, another small fragment of code:

 
       SYMBOLS OFF
0,$6200,$6400,$6800
;$05(Duck1 of RINGS)
ze ,$110,$111
itchGame00

At 0x150BE (almost directly after the compiler output) there's even MORE ASM to be found:

        sei                        ;; DISABLE IRQ.
        cld
        ldx     #$ff               ;; INITIAL STACK POINTER.
        txs
        lda     #$00
        sta     $2001              ;; SCREEN OFF.
        sta     $2000              ;; NMI OFF.
;       sta     $8000 ;Try

        IF MC3
        lda     #$00
        sta     $8000              ;; SET MAP MODE 0.
        ELSE
        sta     $C002              ;;; RESET IRQ OFF.
        sta     $2001
        sta     $2000
        sta     $D000
        sta     $C006
        ENDIF
                ENDM
?
        lda     #$00
        ldx     #$00
a#              ;;-------------- clear system ram.
        sta     $00,x
        sta     $100,x
        sta     $200,x
        sta     $300,x
        sta     $400,x
        sta     $500,x
        sta     $600,x
        sta     $700,x
        inx
        bne     a#
                ENDM
?
        txa
        tay
                ENDM
?
        clc
        adc     €
        ENDM
?
        sec
        sbc     €
        ENDM
?
        bne     ?1#
        jmp     €
?1#
        endm
?
        beq     ?1#
        jmp     €
?1#
        endm
?
        bmi     ?1#
        jmp     €
?1#
        endm
?
        bpl     ?1#
        jmp     €
?1#
        endm
?
        IF MC3
        sta     $e000
        lda     $2002
        lda     #$10
        tax
init_1H:        ;;;
        sta     $2006
        sta     $2006
        eor     #$10
        dex
        bne     init_1H
        sta     $e000

        ELSE

        lda     #$3e
        sta     $8002
        lda     #$3f
        sta     $8003
        lda     #$85
        sta     $c001
        lda     #%00111110
        sta     $d000

        lda     #$00
        sta     $b000
        lda     #$01
        sta     $b001
        lda     #$02
        sta     $b002
        lda     #$03
        sta     $b003
        lda     #$01
        sta     $b004
        sta     $b005
        sta     $b006
        sta     $b007

        lda     #$00
        sta     $c006
        lda     #$00
        sta     $d002
        lda     #%00100000
        sta     $d003


        ENDIF
                ENDM
?
        lda     #$00
        ldx     #$00
a#              ;;-------------- clear system ram.
        sta     $100,x
        inx
        bne     a#
                ENDM
?
        lda     nmi_cnt
        cmp     old_nmi
        bne     ?z#
        rts
?z#     sta     old_nmi
                ENDM
?
        lda     #$0f
        sta     $4015              ;sound off.
        lda     #$00
        sta     $4010
        lda     #$40
        sta     $4017
                ENDM
?
        pha
        txa
        pha
        tya
        pha                     ;; save status.
        ENDM
?
        pla                     ;; restore status.
        tay
        pla
        tax
        pla
        ENDM
?
        lda     #%00000000
        sta     $2003
        lda     #$02
        sta     $4014
                ENDM
?
        lda     €
        asl     a
        tay
        lda     ,y
        sta     r0
        lda     +1,y
        sta     r0+1
        jmp     (r0)
                ENDM
?
        lda     €
        asl     a
        tay
        lda     SubTbl#,y
        sta     r0
        lda     SubTbl#+1,y
        sta     r0+1
        jmp     (r0)
SubTbl#:
                ENDM
?
        lda     €
        jsr     SelectSub
                ENDM
?
                lda     €
                jsr     ShowNo
                        ENDM
?
                sec
                lda     
                sbc     ƒ
                lda     €
                sbc     ‚
                        ENDM
?
                sec
                lda     ,x
                sbc     ƒ,y
                lda     €,x
                sbc     ‚,y
                        ENDM
?
                ldx     sbuflen
                lda     €
                sta     snm,x
                lda     
                sta     sxhmap,x
                sta     sxh,x
                lda     ‚
                sta     sxlmap,x
                sta     sxl,x
                lda     ƒ
                sta     sylmap,x
           ;    lda     „
           ;    sta     szlmap,x
                sta     syl,x
                jsr     InitSPub
                ENDM
?
                ldx     sbuflen
                lda     €
                sta     snm,x
                lda     
                sta     sxhmap,x
                sta     sxh,x
                lda     ‚
                sta     sxlmap,x
                sta     sxl,x
                lda     ƒ
                sta     syhmap,x
                sta     syh,x
                lda     „
                sta     sylmap,x
                sta     syl,x
           ;    lda     …
           ;    sta     szlmap,x
                jsr     InitSPub
                ENDM
?
                ldx     #€
                ldy     #
                jsr     Delay
                bcs     ‚
                ENDM
?
        IF MC3
        lda     #€
        sta     $a000
        ELSE
        nop
        ENDIF
                ENDM
?
        lda     #$00
        sta     $2000           ;;; nmi off.
        sta     $2001           ;;; screen off.
        lda     #$00
        sta     Irq_Ctl         ;;; irq off.
        ENDM
?
        lda     #$1e
        sta     rg2001           ;;; screen on.
        lda     #€
        sta     $2000           ;;; nmi on.
        sta     rg2000
        ENDM
?
        lda     #€
        sta     _Music
        ENDM
?
        lda     #€
        sta     _Sound
        ENDM
?
        IF MC3
        sei
        lda     #$06
        sta     $8000
        lda     €
        sta     DATA_Reg
        sta     PRG_Reg
        sta     $8001
        inc     PRG_Reg
        lda     #$07
        sta     $8000
        lda     PRG_Reg
        sta     $8001
        cli
        ELSE
        lda     €
        sta     DATA_Reg
        sta     PRG_Reg
        sta     $8000           ;;; SET DATA SEGMENT, $8000-$9FFF.
        inc     PRG_Reg
        lda     PRG_Reg
        sta     $8001           ;;; SET PRG SEGMENT, $A000-$BFFF.
        ENDIF
                ENDM
?
        IF MC3
        sei
        lda     #$06
        sta     $8000
        lda     €
        sta     DATA_Reg
        sta     $8001
        cli
        ELSE
        lda     €
        sta     DATA_Reg
        sta     $8000           ;;; SET DATA SEGMENT, $8000-$9FFF.
        ENDIF
                ENDM
?
        IF MC3
        sei
        lda     #$07
        sta     $8000
        lda     €
        sta     PRG_Reg
        sta     $8001
        cli
        ELSE
        lda     €
        sta     PRG_Reg
        sta     $8001           ;;; SET PRG SEGMENT, $A000-$BFFF.
        ENDIF
                ENDM
?
        lda     €
        sta     HOME_Reg
        sta     $8002           ;;; SET HOME SEGMENT, $C000-$DFFF.
                ENDM
?
        lda     €
        sta     $8003           ;;; SET HOME SEGMENT, $C000-$DFFF.
                ENDM
?
        lda     €
        sta     dlo
        lda     
        sta     dhi
        lda     ‚
        sta     dwide
        lda     ƒ
        sta     dtall
        lda     „
        sta     dhv
                ENDM
?
                DB      €
                ENDM
?
        DB      $00
        endm
?
            LDA  $201C
            STA Gun1X
            LDA  $201D
            STA Gun1Y
            LDA  $201E
            STA Gun2X
            LDA  $201F
            STA Gun2Y
            STA $2019           ;Reset Gun1 & Gun2
                ENDM
?
        ldx     €  ;4
        .if FourBank
        stx     Chreg0
        inx
        inx
        stx     Chreg2
        .else
        stx	Chreg0
        inx	
        stx	Chreg1
        inx
        stx	Chreg2
        inx
        stx	Chreg3
        inx
        .endif
                endm
?
        lda	#BankValue ;bnk
        sta	r1
        lda     €   ;from stage1      
        ldy     
        jsr     Back1Page
        SCR_ON  $C8 ;$E8
        lda     ‚
        sta     Irq_Ctl         ;;; fade init.
                endm
?
        lda	#BankValue ;bnk
        sta	r1
        lda     €   
        ldy     
þ       jsr     Back1Pageÿÿ´±²³·¶
ages,irqlines,irqsub ;,bnk