the cutting room mirror

My Arcade Gamer V

The My Arcade Gamer V is an interesting device: It reuses the body of one of dreamGEAR's earlier handhelds while redoing the internals.

Unused Graphics#

GamerV-MissingMountainTiles.png
Two tiles of the mountain on the title screen are missing. Making the tiles be used would make the title screen look like this:

Unused Audio#

Stored in the PCM data between the menu music and the cursor selection noise is... a clip of Ylvis' The Fox (What Does The Fox Say?). It is likely a remnant of software done by the same developers; the PVP Station Light 3000 uses 0:23 to 0:26 on the main menu. It is however totally unused here.

Unused Source Code#

At 0x7BE2E3 there is a big snippet of unused source code that might go to a game either in the console or to another one of the DreamGear consoles.

    LDA MOTION,X
    AND #$7F
    STA MOTION,X
    LDA #FFH
    STA BGMeetFlag
            LDA     #<Act0009PosProc4
            STA     SNAPPOS_PROC
ÿÿ                      LDA             #>Act0009PosProc4
            STA     SNAPPOS_PROC+1
?EXIT9
    RTS
;===========================================
PLAY_MUSIÿÿ
        MUSIC_NUM

    JSR CONMB_MUSIC_INIT_CHECK
    RTS
;===========================================
;===========================================
    ÿÿ      C000H
_ResetKeyEntry1     DS  3
CheckBGMeet1:       DS  3
SET_SPRMEET_F1      DS  3
SET_ACT00_WEAPON    DS  3
SET_ACT01_WEAPON    DS  3
_ResetKeyEntry      DS  3
SETÿÿPR    _F       DS  3
CheckBGMeet:        DS  3       ;8

SET_SCATHE      DS  3       ;9
LOST_LIFE       DS  3       ;10
DOWN_SCROLL     DS  3       ;11

GET_RANDOM1     DS  3       ;12
GET_RANDOM2     Dÿÿ3        
CONMB_MUSIC_INIT_CHECK  DS  3       ;14
;===========================================
;    ORG     F300H
;        INCLUDE SPRITE.ASM
    END
;================ÿÿ==    ===================
�--
ACTProc#0013:
            LDA     #<Act0101InitProc
            STA     SNAPINIT_PROC
                        LDA             #>Act0101InitPÿÿc
    STA     SNAPINIT_PROC+1
            LDA     #<Act0013EndProc
            STA     SNAPEND_PROC
                        LDA             #>Act0013EndProc
            STA     SNAPEND_ÿÿOC                LDA     #<Act0010IncProc
            STA     SNAPINC_PROC
                        LDA             #>Act0010IncProc
            STA     SNAPINC_PROC+1
            JMP     GetNexÿÿna    ct0013EndProc
    LDA #D5H
    STA MOTION+1,X
    JSR _ResetKeyEntry
            LDA     MOTION+2,X
            AND     #$C0
            STA     MOTION+2,X          
;            LDA         MOTION+5,X
ÿÿ                   #$BF
;            STA         MOTION+5,X
            LDA     MOTION,X
            AND     #$7F
            STA     MOTION,X
            JSR     GetFrameAddress
            JSR     SetSnapPos
            RTS
;--------ÿÿ--    -------------------------------------
ACTProc#0014:
            LDA     #<Act0001InitProc
            STA     SNAPINIT_PROC
                        LDA             ÿÿAc    1InitProc
            STA     SNAPINIT_PROC+1
            LDA     #<Act0012EndProc
            STA     SNAPEND_PROC
                        LDA             #>Act0012EndProc
        ÿÿTA    APEND_PROC+1
            LDA     #<Act0012IncProc
            STA     SNAPINC_PROC
                        LDA             #>Act0012IncProc
            STA     SNAPINC_PROC+1
ÿÿ  J    GetNextSnap
;-----------------------------------------------------
ACTProc#0015:
            LDA     #<Act0101InitProc
            STA     SNAPINIT_PROC
          ÿÿ            LDA             #>Act0101InitProc
            STA     SNAPINIT_PROC+1
            LDA     #<Act0015IncProc
            STA     SNAPINC_PROC
                        LDA   ÿÿ        #>Act0015IncProc
            STA     SNAPINC_PROC+1
            JMP     GetNextSnap
Act0015IncProc:
    LDA MOTION
    AND #40H
    BNE ?S1_5
    LDA SPRITE
    CLC
    ADC #5ÿÿ    S    PRITE_X
    LDA SPRITE+1
    ADC #0
    STA SPRITE_X+1
    JMP ?A1_8
?S1_5
    LDA SPRITE
    SEC
    SBC #5
    STA SPRITE_X
    LDA SPRITE+1
    SBC #0
    STA SPRÿÿE_    
?A1_8
            LDA     SPRITE+2
            CLC
            ADC     #8
            STA     SPRITE_Y
            LDA     SPRITE+3
            ADC     #0
            STA     SPRITE_Y+1
    LDA SPRITE_Y
    CMP #240
    BCCÿÿC1    EC
    SBC #240
    STA SPRITE_Y
    INC SPRITE_Y+1
?C1
            LDA     #$92
            JSR     CheckBGMeet

    JSR SET_SPRMEET_F

            LDA     BGMeetFlag
            AND     #10H
ÿÿBN    ROC_D
            LDA     BGMeetFlag
            AND     #02H
    BNE ?PROC_E
    JMP ?PROC_F
?PROC_D
    LDA #$CB
    STA MOTION+1,X
    JSR _ResetKeyEntry

    LDA MOTION+2,Xÿÿ    A    $C0
    STA MOTION+2,X
;    LDA     #0
;    STA     MOTION+5,X
    LDA MOTION,X
    AND #$7F
    STA MOTION,X
            LDA     #<Act0015PosProc1
            STA     SNAPPOS_PROC
ÿÿ                      LDA             #>Act0015PosProc1
            STA     SNAPPOS_PROC+1
    JMP ?EXIT0F
?PROC_E
    LDA #$C0
    STA MOTION+1,X
    JSR _ResetKeyEntrÿÿ

    A   MOTION+2,X
    AND #$C0
    STA MOTION+2,X
;    LDA     #0
;    STA     MOTION+5,X
    LDA MOTION,X
    AND #$7F
    STA MOTION,X
            LDA     #<Act0015PosProc2
        ÿÿTA    APPOS_PROC
                        LDA             #>Act0015PosProc2
            STA     SNAPPOS_PROC+1
    JMP ?EXIT0F

?PROC_F
            LDA     BGMeetFlag
            Aÿÿ         
    BEQ ?PROC_G
    LDA BG_CONTROL22
    AND #40H
    BEQ ?PROC_G

    LDA #$D2
    STA MOTION+1,X
    JSR _ResetKeyEntry

    LDA MOTION+2,X
    AND #$C0
    STÿÿMO    +2,X
;    LDA     #0
;    STA     MOTION+5,X
    LDA MOTION,X
    AND #$7F
    STA MOTION,X
            LDA     #<Act0015PosProc2
            STA     SNAPPOS_PROC
                ÿÿ      LDA             #>Act0015PosProc2
            STA     SNAPPOS_PROC+1
    JMP ?EXIT0F

?PROC_G
            LDA     #<Act0015PosProc1
            STA     SNAPPOS_PROC
           ÿÿ           LDA             #>Act0015PosProc1
            STA     SNAPPOS_PROC+1
?EXIT0F
    RTS

Act0015PosProc2
            LDA     BG_SUPPORT+0
            STA     SPRITE+2
            LDAÿÿBG    PORT+1
            STA     SPRITE+3

Act0015PosProc22
    LDA MOTION
    AND #40H
    BNE ?S1_5
    LDA SPRITE
    CLC
    ADC #5
    STA SPRITE
    LDA SPRITE+1
    ADC #ÿÿ
        SPRITE+1
    JMP ?A1_8
?S1_5
    LDA SPRITE
    SEC
    SBC #5
    STA SPRITE
    LDA SPRITE+1
    SBC #0
    STA SPRITE+1
?A1_8
    RTS

Act0015PosProc1
            ÿÿA     ITE+2
            CLC
            ADC     #8
            STA     SPRITE+2
            LDA     SPRITE+3
            ADC     #0
            STA     SPRITE+3
    JMP Act0015PosProc22
;---------------------------ÿÿ--    ------------------
ACTProc#0016:
ACTProc#0017:
            LDA     #<Act0000InitProc
            STA     SNAPINIT_PROC
            LDA     #>Act0000InitProc
            STA     SNAPINIT_ÿÿOC               LDA     #<Act0016IncProc
            STA     SNAPINC_PROC
                        LDA             #>Act0016IncProc
            STA     SNAPINC_PROC+1
            JMP     GetNexÿÿna    
Act0016IncProc:
        JSR GET_SPRITE_XY

    JSR SET_SPRMEET_F

            JSR     DefaultIncProc

    LDA SPRMeetFlag1
    BEQ ?EXIT

    LDA #$C0
    STA MOTIONÿÿ,X    SR    _ResetKeyEntry

    LDA MOTION+2,X
    AND #$C0
    STA MOTION+2,X
;    LDA     MOTION+5,X
;    AND     #$BF
;    STA     MOTION+5,X
    LDA MOTION,X
    AND #$7Fÿÿ  S    OTION,X
?EXIT
    RTS
;-----------------------------------------------------
;-----------------------------------------------------
ACTProc#00ÿÿ:
    LDA     #<Act0001InitProc
            STA     SNAPINIT_PROC
                        LDA             #>Act0001InitProc
            STA     SNAPINIT_PROC+1
            LDA     #<Actÿÿ18    roc
            STA     SNAPEND_PROC
                        LDA             #>Act0018EndProc
            STA     SNAPEND_PROC+1
            JMP     GetNextSnap

Act0018EndPrÿÿ
    DA      MOTION+2,X
            AND     #$C0
            STA     MOTION+2,X          
            LDA     MOTION+5,X
            AND     #$BF
            STA     MOTION+5,X
            LDA     MOTION,X
            AND     #$7F
            STÿÿ    M    N,X
            JSR     GetFrameAddress
            JSR     SetSnapPos
            RTS
;-----------------------------------------------------
ACTProc#0019:
            LDA     #<Act00ÿÿIn    oc
            STA     SNAPINIT_PROC
                        LDA             #>Act0001InitProc
            STA     SNAPINIT_PROC+1
            LDA     #<Act0018EndProc
            STA ÿÿNA    _PROC
                        LDA             #>Act0018EndProc
            STA     SNAPEND_PROC+1
            JMP     GetNextSnap
;---------------------------------ÿÿ--    ------------
ACTProc#001A:
            LDA     #<Act0001InitProc
            STA     SNAPINIT_PROC
                        LDA             #>Act0001InitProc
            STAÿÿSN    IT_PROC+1
            LDA     #<Act0018EndProc
            STA     SNAPEND_PROC
                        LDA             #>Act0018EndProc
            STA     SNAPEND_PROC+1
            ÿÿP     NextSnap
;-----------------------------------------------------
ACTProc#001B:
            JMP     GetNextSnap
;-----------------------------------------ÿÿ--    ----
;=====================================
MainProc#02:
        DW  ACTProc#0200,ACTProc#0201
;-------------------------------------
ACTProc#0200ÿÿ
;    ---------------------------------
ACTProc#0201:
;-------------------------------------
        JMP GetNextSnap
;==========================
MainPrÿÿ#0          DW  ACTProc#0300,ACTProc#0301
;-------------------------------------
ACTProc#0300:
;-------------------------------------
ACTProc#0301:
;-ÿÿ--    ----------------------------

Programmer Credits#

Throughout the ROM there are various hidden programmer credits:

00C77BF7, 00D4F1F0, 01467259

Programmer:Wang Hongchao

00D66B10, 015EF842

Programmer:WangFei  Music:WangFei  Artist:WangXiang  Originality:WangFei

0103F43C

Program: Tony(zhang yuan shen)

01FFF0F0

Program : Zhang Yuan Shen