If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!
Rise of the Robots (SNES)
Rise of the Robots |
---|
Developers: Mirage,
Data Design Interactive This game has unused code. This game has a development article This game has a prototype article |
The SNES Rise of the Robots contains a nice soundtrack (including a brief guitar riff from Queen's Brian May), but otherwise has the same crappy gameplay as the other versions of the game.
To do:
|
Contents
Sub-Pages
Development Info |
Prototype Info |
Unused Absolute Entertainment Screen
Nestled in the last 8,192 bytes of the ROM are code and Rob Northen-compressed data for an Absolute Entertainment logo screen. While Absolute did publish a few versions of the game including the 3DO version, they did not fill this role for the SNES version in any region, leaving this screen unused.
The following Game Genie codes replace the Acclaim logo screen with this one:
USA |
---|
446B-87A7 DD6C-8DD7 3D6C-8D07 EE6C-8D67 1D6C-8DA7 |
Note that the logo colors glitch when fading out. This is because the palette of the previous screen is reloaded during the fadeout, and might be a side effect of how this screen was restored.
Source Code Fragments
The European version has fragments of code hidden throughout the ROM:
At 1FFB5:
lda #$00 ldx #16 !0 jsr wait_frame sta |w_inidisp inc a
25C667:
(sh)ow_text lda >win_msg_table+2,x sta results_win+window_text+2 !loop2: jsr wait_frame ldy #results_win jsr window_process lda results_win+window_text ora results_win+window_text+2 bne !loop2 rts print_gmess: jsr gfx_mess jsr check_gfx_mess jsr wait_frame rts if cine cine_list: dl wn_cb_mc dl fly_mc dl cn_ld_mc dl ds_ld_mc dl wn_cb_mc dl cn_ap_mc dl ds_ap_mc dl wn_cb_mc dl cn_cr_mc dl ds_cr_mc dl wn_cb_mc dl cn_ml_mc dl ds_ml_mc dl wn_cb_mc dl cn_jp_mc dl ds_jp_mc dl wn_cb_mc dl cn_sp_mc dl ds_sp_mc dl 0 endif end_sequence: if en_sound!rom jsr play_brian endif jsr clr_palette_2 lda #0 ldx #256 jsr fade_it stz flash_palette stz flash_colour jsr clr_pal_buff jsr death_hdma_on jsr clear_screen ldx #10 jsr delay jsr wait_frame jsr screen_off stz nrg_dsp_flg stz split_mode lda #29 a08 sta w_bg1hofs xba sta w_bg1hofs lda #$03 sta |w_tm lda #(sc_1b_scrn/2)>>8 sta w_bg1sc lda #(sc_2c_scrn/2)>>8 sta w_bg2sc a16 jsr screen_on lea window2_table,<a0 jsr init_windows lea font_dat,<a0 jsr init_window_text lea wind_mission,<a0 ldy #window_1 jsr create_window lea mission_info,window_1+window_nexttext jsr wait_log_finish stz play_time if en_which_logo<>1 jsr replay_up endif if cine win_cine_r: lea cine_list,cine_list_ptr win_cine: lda cine_list_ptr ldx cine_list_ptr+2 sta a0 stx a0+2 ldy #2 lda [a0] ora [a0],y beq win_cine_r lda [a0] sta cine_add lda [a0],y sta cine_add+2 lda cine_list_ptr clc adc #4 sta cine_list_ptr lda [cine_add] sta cine_size inc cine_add inc cine_add ldx #$200 stx charc_set stz cine_count lda #112 sta cine_pal_size lea unpack_b1,<a1 win_loop: lda cine_count cmp cine_size bcs end_win lda [cine_add] tax inc cine_add inc cine_add lda [cine_add] inc cine_add inc cine_add stx a0 sta a0+2 lda #sc_1b_scrn/2+7*32+8+3 sta d0 jsr cine_frame jsr wait_frame ldy #window_1 jsr window_process inc play_time inc cine_count jmp win_loop end_win: jsr clr_palette_2 lda #16 ldx #112 jsr fade_it lda #sc_1b_scrn/2+6*32 sta blit_dest lda #12*32 sta blit_lenth jsr clear_ppu jmp win_cine endif !wloop: jsr wait_frame bra !wloop ;************************************************************************************ ;* ;* Game Message Process ;* game_mess_process: lda bouts_total cmp bouts_selected beq !no_final cmp bout_number bne !no_final lda #0 bra !final !no_final: lda bout_number !final: asl tax lda >round_table,x ldx #$40 jsr gfx_mess jsr check_gfx_mess jsr wait_frame jsr game_mess lda >rest_after_mess sta rest jmp game_loop_end ;************************************************************************************************ ;* ;* Bout over process ;* bout_over_process: ; jsr clear_top jsr print_results jsr bout_over_mess no_game_mess: jsr fade_screen_off jsr screen_off jsr hdma_off jsr clear_sprites jsr clear_screen ;**************************************************************************** ;** Check here for replay ;** ldx winner_amp bne !player_won ;Last game was a draw lda bout_number cmp bouts_total bra !not_next_opponent !player_won: lda robot_won,x cmp bouts_toplay bcc !not_next_opponent ldx mission dex bne !new_select lda dead_type beq !dead ldx players dex bne !dead lda #robot_sup cmp robot_opponent bne !next_robot jmp !new_robot !next_robot: inc robot_opponent jmp !new_robot !not_next_opponent: jmp !new_bout !dead: jmp !new_game !new_robot: lda #gs_new_robot sta game_state jmp game_loop_end !new_bout: lda #gs_new_bout sta game_state jmp game_loop_end !new_game: lda #gs_new_game sta game_state jmp game_loop_end !new_select: lda #gs_new_select sta game_state jmp game_loop_end ;************************************************************************************ ;* ;* Game over process ;* ;**************************************************** ;* Print results ;RESULT (overall)=0 for game_over_process: stz result ;default to draw jsr print_results ;print the result of last bout teletype results_win,finalr_msg lda robot_2+robot_won ;see who won overall cmp robot_1+robot_won ;If there is a winner bypass draw bne !not_draw ;******************************** OVERALL DRAW ********************************** teletype results_win,draw_msg jsr game_end_mess ;fade to red etc. lda #gs_new_game ;go play new game sta game_state jmp game_loop_end ;******************************************************************************** !not_draw: ldy robot_2+robot_type ;decide who is the winner lda #0 ldx robot_1+robot_won cpx robot_2+robot_won bcs !r0_win ;bypass if it is cyborg ldy #0 lda robot_2+robot_type ;else get type of oppponent bra !opp_win !r0_win: ldx #1 ;cyborg win result stx result bra !cont_win !opp_win: ldx #2 ;opponent win stx result !cont_win: sty dead_type ;who is dead asl asl tax lda >winv_msg_table,x sta results_win+window_text lda >winv_msg_table+2,x sta results_win+window_text+2 !loop3: jsr wait_frame ldy #results_win jsr window_process lda results_win+window_text+2 ora results_win+window_text bne !loop3 ldx mission ;decide on conditions to display GAME OVER dex bne !no_game_over ;Not if TRAINING ldx players ;Not if 2 Player dex bne !no_game_over lda result ;Not if Cyborg win cmp #1 beq !no_game_over teletype results_win,gameover_msg ;print GAME OVER !no_game_over: jsr game_end_mess ;Fade to red print message jsr dead_frame ;Death cinematic lda result cmp #1 ;Cyborg victory beq victory ; ;************************ Overall result draw or lose *********************************** ; ldx mission ;if die on mission go back to intro screen dex ;else go back to select screen bne !ns ldx players dex bne !ns !ng: lda #gs_new_game sta game_state jmp game_loop_end !ns: lda #gs_new_select sta game_state jmp game_loop_end ;************************ Cyborg Victory ************************************************* victory: ldx players ;2 Players - so select dex bne !new_select ldx mission ;Training - so new game dex bne !new_select lda robot_2+robot_type cmp #robot_sup bne !new_robot ;************************************************************************************ ; ; M I S S I O N C O M P L E T E hurray , the end of the game ; jsr end_sequence ;Victory lda #gs_complete sta game_state jmp game_loop_end !new_robot: inc robot_opponent lda #gs_new_robot sta game_state jmp game_loop_end !new_game: lda #gs_new_game sta game_state jmp game_loop_end !new_select: lda #gs_new_select sta game_state jmp game_loop_end ;************************************************************************************ set_scroll: jsr wait_frame lda scroll_pos a08 sta |w_bg2vofs xba sta |w_bg2vofs a16 rts init_new_robot: jsr hdma_off lda #1 sta tele_flag lda #1 sta split_mode jsr wait_frame jsr clear_screen jsr screen_off lda #$0000 sta robot_2+robot_score stz robot_1+robot_won stz robot_2+robot_won lda #1 sta bout_number lda demo_mode bne no_select !sel_again: jsr select_screen lda cancel_sel bne !sel_again no_select: jsr hdma_off jsr wait_frame lda players sta players_g lda bouts sta bouts_g lda timer sta timer_g lda difficulty sta difficulty_g lda demo_mode beq !no_demo lda #0 sta players_g lda #1 sta bouts_g lda #4 sta timer_g lda #2 sta difficulty_g !no_demo: lda bouts_g dec a asl tax lda >bouts_table,x sta bouts_total sta bouts_selected lsr inc a sta bouts_toplay rts init_bout: jsr hdma_off jsr clear_screen jsr clear_sprites jsr init_sprites jsr init_robots jsr init_background jsr init_vars jsr inipix jsr init_energy jsr init_schedule jsr wait_frame jsr wait_frame jsr wait_frame lda #sc_2n_scrn/2 sta wind_screen lea window_table,<a0 jsr init_windows lea font_dat,<a0 jsr init_window_text lea robot1_window,<a0 ldy #window_1 jsr create_window lea robot2_window,<a0 ldy #window_2 jsr create_window ; jsr players_won jsr hdma_off jsr para_init jsr hdma_on jsr fade_screen_on jsr screen_on jsr setup_collisions lda #%01010010 sta m_cgadsub lda #%10000010 sta m_cgswsel a08 lda timer_value sta timer_count ldx timer_g dex lda >timer_table,x sta timer_count+1 a16 lda >timer_table,x and #$ff sta timer_mode lda #2 sta game_mode lda #10 sta num_frames if en_sound!rom lda robot_opponent asl asl tax lda >robot_table,x sta a2 lda >robot_table+2,x sta a2+2 ldy #ri_music lda [a2],y jsr play_tune endif jsr wait_frame a08 lda #%01010000 sta |w_cgadsub lda #%10000010 sta |w_cgswsel a16 lda #2 sta spr_blit_flag stz shake lda #4 sta sprite_blit_count stz result lda >rest_before_mess sta rest stz time_over_flag rts init_sprite_blit: stz blit_oam lda #0 ldx #4*8/2 ldy #0 !lp: sta blit_tables,y iny iny dex bne !lp rts ;*************************************************************************************** ;* ;* Pause Pause_It: lda game_mode bne !exit lda #but_start bit |joy_0 bne !start_it ldx players dex beq !exit bit |joy_1 bne !start_it bra !exit !start_it: jsr sprite_log_blit lda #Pause_table&$ffff ldx #$2 jsr gfx_mess jsr check_gfx_mess lda #but_start jsr wait_button_down_up lda #but_start jsr wait_button_down_up !exit: rts wait_button_down_up: tax !s0 jsr wait_frame txa ldy players dey beq !p11 bit |joy_1 bne !s1 !p11: bit |joy_0 beq !s0 !s1: jsr wait_frame txa ldy players dey beq !p12 bit |joy_1 bne !s1 !p12: bit |joy_0 bne !s1 rts wbdu: tax !s0 lda |frame_count !s0a: cmp |frame_count beq !s0a txa bit |joy_0 bne !s1 bit |joy_1 beq !s0 !s1: lda |frame_count !s1a: cmp |frame_count beq !s1a txa bit |joy_0 bne !s1 bit |joy_1 bne !s1 rts make_joystick_config ldx #j_config_1 ldy #0 !loop: lda 0,x sta j_config,y inx inx iny iny cpy #12 bcc !loop rts delay: !wl: jsr wait_frame dex bne !wl rts gfx_mess_delay: !wl: phx jsr wait_frame jsr clear_sprite_buf jsr csp jsr check_gfx_mess jsr sprite_log_blit plx dex bne !wl rts sect_2_exit: jsr fade_screen_off jsr vbl_vect_off jsr screen_off jsr hdma_off jsr clear_sprites !loop jmp !loop which_logo: if en_which_logo!rom jml (logo_vect) endif rtl check_timer_out: lda timer_mode beq cto_exit lda game_mode bne cto_exit lda timer_count cmp #2 bcs cto_exit stz timer_count ldy #robot_1 lda robot_1+robot_energylost cmp robot_2+robot_energylost bcs kill_game ldy #robot_2 kill_game: lda #1 sta time_over_flag jsr end_bout cto_exit: rts game_end_mess: if en_sound!rom jsr fade_tune endif lda #2000 sta |spr_blit_flag stz nrg_dsp_flg jsr wait_frame jsr wait_frame lea palette_str,<a0 lda #0 ldx #256 jsr copy_palette_2 ldx #256-16 ldy #16*2 !lp: lda palette_str2,y and #%0000000000011111 sta palette_str2,y iny iny dex bne !lp lda #16 ldx #256-16-16-16 jsr fade_it jsr wait_frame ldy #window_1 jsr create_window_matrix jsr wait_frame ldy #window_2 jsr create_window_matrix stz nrg_dsp_flg !loop1: jsr wait_frame ldy #window_1 jsr window_process ldy #window_2 jsr window_process lda window_1+window_text ora window_1+window_text+2 ora window_2+window_text ora window_2+window_text+2 bne !loop1 stz game_mode lda #4 sta game_mode lda #1 sta num_frames rts bout_over_mess: ldy #window_1 jsr create_window_matrix jsr wait_frame ldy #window_2 jsr create_window_matrix stz nrg_dsp_flg !loop1: jsr wait_frame ldy #window_1 jsr window_process ldy #window_2 jsr window_process lda window_1+window_text ora window_1+window_text+2 ora window_2+window_text ora window_2+window_text+2 bne !loop1 lda #100 lda #end_time sta num_frames rts game_mess: !loop1: jsr wait_frame ldy #window_1 jsr window_process ldy #window_2 jsr window_process lda window_1+window_text ora window_1+window_text+2 ora window_2+window_text ora window_2+window_text+2 bne !loop1 lda #r0a&$ffff sta window_1+window_text lda #r0a>>16 sta window_1+window_text+2 lda robot_opponent inc a asl asl tax lda >plrtab,x sta window_2+window_text lda >plrtab+2,x sta window_2+window_text+2 jsr print_windows lda #scr_1_mess&$ffff sta window_1+window_text lda #scr_1_mess>>16 sta window_1+window_text+2 lda #scr_2_mess&$ffff sta window_2+window_text lda #scr_2_mess>>16 sta window_2+window_text+2 jsr print_windows stz game_mode lda #-1 sta nrg_dsp_flg !exit: jsr players_won rts print_windows: !loop: jsr wait_frame ldy #window_2 jsr window_process ldy #window_1 jsr window_process lda window_1+window_text ora window_1+window_text+2 ora window_2+window_text ora window_2+window_text+2 bne !loop rts set_win_lose_text: phy phx tya ldy #window_1 ldx #window_2 cmp #robot_1 beq !r1 ldy #window_2 ldx #window_1 !r1: lda #player_matchlost&$ffff sta window
2FF793:
rts schedule_process: lea schedule,<a1 ldx #sch_len ldy #0 !loop: lda [a1],y bne !s1 iny iny lda [a1],y dey dey sta [a1],y bra !s2 !s1: sec sbc #1 sta [a1],y !s2: iny iny iny iny dex bne !loop rts init_robots: ; if en_sp1 lea robot_1,<a2 lda #Robot_Cyb ldx #2 jsr irs ; endif ; if en_sp2 lea robot_2,<a2 lda robot_opponent ldx difficulty_g jsr irs ; endif ldx players_g bne !n1 lda robot_1+robot_flags ora #1<<Bit_CPU sta robot_1+robot_flags !n1: cpx #2 beq !n2 lda robot_2+robot_flags ora #1<<Bit_CPU sta robot_2+robot_flags !n2: rts init_background: if en_back lda robot_2+robot_type sta d8 lda #2 sta charc_set lda #32 lda #0 clc adc #sc_1n_scrn/2 sta d0 lda d8 clc ; adc #1 asl asl tax lda >robot_table,x sta a0 sta a4 lda >robot_table+2,x sta a0+2 sta a4+2 ldy #ri_room lda [a0],y tax iny iny lda [a0],y stx a0 sta a0+2 stz d8+2 jsr back_frame endif rts irs: ;Profile index pha txa dec a and #3 ldx #7 jsr mult_xa clc adc bout_number dec a ldx #6 jsr mult_xa sta d4 pla if 0 pha ldx #(robot_parm_size)/2 lda #0 tay !clp: sta [a2],y iny iny dex bne !clp pla endif ldy #robot_type sta [a2],y asl asl tax lda >robot_table,x sta a6 lda >robot_table+2,x sta a6+2 ldy #ri_gfx lda [a6],y pha iny iny lda [a6],y ldy #robot_gfx+2 sta [a2],y dey dey pla sta [a2],y ldx a2 cpx #robot_1 bne p2_set p1_set: lda #sjoy0 sta robot_joyval,x ldy #ri_xstartl lda [a6],y sta robot_x,x sta robot_x_origin,x lda #robot_2 sta robot_other,x lda #0 sta robot_other+2,x lda #rob_gbuff_1&$ffff sta robot_graphics,x lda #rob_gbuff_1>>16 sta robot_graphics+2,x lda #0 sta robot_overdelay,x bra set_ok p2_set: lda #sjoy1 sta robot_joyval,x ldy #ri_xstartr lda [a6],y
31F968:
*********************************** ; ldx mission ;if die on mission go back to intro screen dex ;else go back to select screen bne !ns ldx players dex bne !ns !ng: lda #gs_new_game sta game_state jmp game_loop_end !ns: lda #gs_new_select sta game_state jmp game_loop_end ;************************ Cyborg Victory ************************************************* victory: ldx players ;2 Players - so select dex bne !new_select ldx mission ;Training - so new game dex bne !new_select lda robot_2+robot_type cmp #robot_sup bne !new_robot ;************************************************************************************ ; ; M I S S I O N C O M P L E T E hurray , the end of the game ; jsr end_sequence ;Victory lda #gs_complete sta game_state jmp game_loop_end !new_robot: inc robot_opponent lda #gs_new_robot sta game_state jmp game_loop_end !new_game: lda #gs_new_game sta game_state jmp game_loop_end !new_select: lda #gs_new_select sta game_state jmp game_loop_end ;************************************************************************************ set_scroll: jsr wait_frame lda scroll_pos a08 sta |w_bg2vofs xba sta |w_bg2vofs a16 rts init_new_robot: jsr hdma_off lda #1 sta tele_flag lda #1 sta split_mode jsr wait_frame jsr clear_screen jsr screen_off lda #$0000 sta robot_2+robot_score stz robot_1+robot_won stz robot_2+robot_won lda #1 sta bout_number lda demo_mode bne no_select !sel_again: jsr select_screen lda cancel_sel bne !sel_again no_select: jsr hdma_off jsr wait_frame lda players sta players_g lda bouts sta bouts_g lda timer sta timer_g lda difficulty sta difficulty_g lda demo_mode beq !no_demo lda #0 sta play
32F8B2:
dec d0 ;any more shards to create ? beq !exit ;end if not !na: lda a4 clc adc #shard_parm_size sta a4 dec d1 beq !exit jmp !lp !exit: rts create_spark: lda #no_sparks sta d0 ldx #spark_buff !spl: lda spark_y,x bne !not_clear lda shard_coordx sta spark_x,x lda shard_coordy sta spark_y,x stz spark_frame,x rts !not_clear: txa clc adc #spark_parm_size tax dec d0 bne !spl rts vert_on: if en_vert sei a08 lda #%10110001 sta |w_nmitimen a16 lda >htv sta |w_htimel cli endif rts np_set: ldx #max_dma_p ldy #50 a08 lda r_stat78 a16 bit #1<<4 bne !pal ldx #max_dma_n ldy #60 !pal: if en_ntsc ldx #max_dma_n ldy #60 endif stx max_dma sty timer_value rts vert_off: if en_vert jsr wait_frame sei a08 lda #%10000001 sta |w_nmitimen a16 cli endif rts ;0978 266333 debug: if en_debug if rom=0 if 0 pv robot_2+robot_aioverride,0 pv robot_2+robot_aioverridemode,3 pv robot_2+robot_mode,6 pv robot_2+robot_int,9 pv robot_2+robot_motivation,12 pv robot_2+robot_speed,15 pv robot_2+robot_firepowerdelay,18 pv robot_2+robot_aitimer,21 pv robot_2+robot_aimoveaddr,24 pv robot_2+robot_aimoveaddr+2,27 pv robot_2+robot_aimoveaddr+4,30 endif if 0 pv robot_2+robot_mode,0 pv robot_2+robot_frame,3 pv robot_2+robot_y,6 pv robot_2+robot_ymax,9 endif if 1 pv robot_1+robot_frame,0 pv robot_2+robot_frame,3 pw cur_col_pos,6 pw cur_col_diff,11 pw cur_col_xy,16 pw cur_col_xy+2,21 pv robot_1+robot_cur_hit+2,26 pv robot_2+robot_cur_hit+2,29 endif endif endif rts reset_energy: ldy a2 lda robot_type,y asl
34F39C:
straight to IPLROM SET16 lda #(MusicDriver&$ffff) ;download driver (24 bit address) sta <SonyAddr lda #RamII lda #MusicDriver>>16 sta <SonyAddr+2 jsr SONY_send CLR16 lda #$82 ;DOWNLOAD data (music) sta >APU_PORT0 SET16 lda mus_data sta <SonyAddr lda mus_data+2 sta <SonyAddr+2 jsr SONY_send CLR16 lda #$82 ;DOWNLOAD data (samples) sta >APU_PORT0 SET16 lda samp_1 sta <SonyAddr lda samp_1+2 sta <SonyAddr+2 jsr SONY_send CLR16 lda #$82 ;DOWNLOAD data (samples) sta >APU_PORT0 SET16 lda samp_2 sta <SonyAddr lda samp_2+2 sta <SonyAddr+2 jsr SONY_send CLR16 sta >APU_PORT3 plp ;restore any interrupts SET16 rts ;----------------------------------------------------------------------------- SONY_send: jsr Boot_APU CLR16 !wait0: lda >APU_PORT0 ;wait for handshake bne !wait0 dec a sta >APU_PORT2 ;acknowledge handshake sta <callnum ;init call number to $FF rts ;------------------------------------------------------------------------------- ; Once the Sound_Init routine has been called, the following routine can be ; used to download additional music data (or sample data with '#Musicdata' ; replaced by '#Samples') which is required for later levels of the game. ;------------------------------------------------------------------------------- Send_Data: stx mus_data sta mus_data+2 send_mus_data: CLR16 php sei ;disable any other interrupts S_D0: lda >APU_PORT0 ;latest value sent by SOUND CPU cmp <callnum bne S_D0 ;previous call still not finished lda #$82 ;DOWNLOAD data (music) sta >APU_PORT0 inc <callnum lda <callnum sta >APU_PORT3 ;forces a new call SET16 lda mus_data sta <SonyAddr lda mus_data+2 sta <SonyAddr+2 jsr SONY_send sta >AP
35FA09:
_code: incbin abslogo.bin endif dr hctab: hct = 0 rept 6 dw hct,hct+$10 hct = hct+$43 endr endif dtune_time: dw 400 hit_scale: dw $80 reverse_off: db $2f,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$2f power_table: dw robot_min_power-2 dw robot_mid_power-2 dw robot_max_power-2 sel_ts: dw %00000000 sel_adsub dw %01010010 sel_swel dw %00010010 option_table: dw 3,2,3,4,2,2,3 if en_sound!rom music_table: dl music1,music1,music2,music3,music4,musict
Hidden Developer Credit
The first copyright screen has text crediting developer Data Design Interactive below the credit for programmer Tony Stoddart. However, it goes unseen due to it being assigned the same color as the background. Changing color index 3 to something other than black will reveal it:
Unedited | Hidden Text Revealed |
---|---|
The Rise of the Robots series
| |
---|---|
3DO | Rise of the Robots |
Arcade | Rise of the Robots |
Game Gear | Rise of the Robots |
SNES | Rise of the Robots (Prototype) |
DOS, PlayStation, Sega Saturn | Rise 2: Resurrection |
- Pages missing developer references
- Games developed by Mirage
- Games developed by Data Design Interactive
- Pages missing publisher references
- Games published by T&E Soft
- Games published by Acclaim Entertainment
- SNES games
- Pages missing date references
- Games released in 1994
- Games released in December
- Games with unused code
- Games with uncompiled source code
- Games with hidden developer credits
- Games with unused graphics
- To do
- Rise of the Robots series
Cleanup > Pages missing date references
Cleanup > Pages missing developer references
Cleanup > Pages missing publisher references
Cleanup > To do
Games > Games by content > Games with hidden developer credits
Games > Games by content > Games with uncompiled source code
Games > Games by content > Games with unused code
Games > Games by content > Games with unused graphics
Games > Games by developer > Games developed by Data Design Interactive
Games > Games by developer > Games developed by Mirage
Games > Games by platform > SNES games
Games > Games by publisher > Games published by T&E Soft
Games > Games by publisher > Games published by Throwback Entertainment > Games published by Acclaim Entertainment
Games > Games by release date > Games released in 1994
Games > Games by release date > Games released in December
Games > Games by series > Rise of the Robots series