It is currently Sat Oct 21, 2017 5:27 am

All times are UTC - 7 hours



Forum rules


Related:



Post new topic Reply to topic  [ 20 posts ]  Go to page Previous  1, 2
Author Message
PostPosted: Thu Sep 07, 2017 9:24 pm 
Offline
User avatar

Joined: Thu Jan 03, 2008 1:48 pm
Posts: 540
I would like to see a Game Boy Color cart/game using VIN expansion audio to be plugged into a Super Game Boy 2, also utilizing the SPC700 audio to full extent and somehow using the SGB border as an active element of gameplay.


Top
 Profile  
 
PostPosted: Fri Sep 08, 2017 12:03 am 
Offline
User avatar

Joined: Mon Sep 15, 2014 4:35 pm
Posts: 3074
Location: Nacogdoches, Texas
I'd like to the SNES push a 160x144, 15bpp framebuffer every frame too. :|

Okay, you could try and have the SNES emulate GBC video rather than copying a framebuffer off of the cartridge, But there are many hiccups you would run into, like 4bpp instead of 2bpp sprites, and 2bpp BG layer palettes all using color 0, which means you'd have to use 4bpp graphics for BG layers too. I guess you could deal with this if the SNES can upload 2x as much graphical data into VRAM in one frame.


Top
 Profile  
 
PostPosted: Fri Sep 08, 2017 6:21 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19113
Location: NE Indiana, USA (NTSC)
B00daW wrote:
I would like to see a Game Boy Color cart/game using VIN expansion audio to be plugged into a Super Game Boy 2, also utilizing the SPC700 audio to full extent and somehow using the SGB border as an active element of gameplay.

The Super Game Boy 2 was never released for the Super Nintendo Entertainment System. It was exclusive to the Super Famicom; use with the NTSC Super NES requires modification of the console's Game Pak slot, and I doubt it works with the PAL Super NES at all.

Espozo: I think the Super Game Boy 2, specifically 2, was mentioned because 2 added a Game Link port. The idea is that the GBC and SGB2 would be connected through Game Link, running a GBC-mode master program on the GBC and a monochrome slave program on the SGB2 that uses the SPC700.


Top
 Profile  
 
PostPosted: Fri Sep 08, 2017 10:40 am 
Offline

Joined: Wed May 19, 2010 6:12 pm
Posts: 2293
An SNES engine should allow the ability to switch between Mode-7 and normal modes mid level, so I'm thinking about arranging VRAM like this:

Code:
$0000-$3FFF, mode 7 layer or normal gameplay 4bpp BG tiles
$4000-$5FFF, sprite patterns
$6000-$6FFF, tile maps
$7000-$7FFF, 2bpp BG tiles, and/or 4bpp BG tiles during split screen mode-7 sections


...and a way to sweep VRAM while transitioning between parts of the level.


Top
 Profile  
 
PostPosted: Tue Oct 03, 2017 11:24 am 
Offline

Joined: Wed May 19, 2010 6:12 pm
Posts: 2293
I should really work on this new engine thing. I've been putting this off just because initialization routines are boring, especially when you're setting up registers in VBLANK that you don't need until much later.

I made a table of where I'll put all the shadow sPPU registers in WRAM.

Code:
define joypad1($0000)
define joypad1hi($0001)
define joypad2($0002)
define joypad2hi($0003)
define trigger1($0004)
define trigger2($0006)
define frame_done($0008)

define screen_brightness($0a)
define object_settings($0b)
define BG_mode($0c)
define mosaic($0d)
define BG1_tilemap($0e)
define BG2_tilemap($0f)
define BG3_tilemap($10)
define BG4_tilemap($11)
define BG1&2_char($12)
define BG3&4_char($13)
define BG1xlo($14)
define BG1xhi($15)
define BG1ylo($16)
define BG1yhi($17)
define BG2xlo($18)
define BG2xhi($19)
define BG2ylo($1a)
define BG2yhi($1b)
define BG3xlo($1c)
define BG3xhi($1d)
define BG3ylo($1e)
define BG3yhi($1f)
define BG4xlo($20)
define BG4xhi($21)
define BG4ylo($22)
define BG4yhi($23)
define Mode_7_settings($24)
define par_A_lo($25)
define par_A_hi($26)
define par_B_lo($27)
define par_B_hi($28)
define par_C_lo($25)
define par_C_hi($26)
define par_D_lo($27)
define par_D_hi($28)
define par_X_lo($25)
define par_X_hi($26)
define par_Y_lo($27)
define par_Y_hi($28)
define window_set_1&2($29)
define window_set_3&4($2a)
define window_set_OBJ($2b)
define window_pos_0($2c)
define window_pos_1($2d)
define window_pos_2($2e)
define window_pos_3($2f)
define window_logic_BG($30)
define window_logic_OBJ($31)
define main_screen($32)
define sub_screen($33)
define window_main($34)
define window_sub($35)
define color_math_settings($36)
define color_math_enable($37)
define window_color_red($38)
define window_color_green($39)
define window_color_blue($3a)
define screen_mode($3b)


These work with this code:

Code:
sPPU_register_write:
php
rep #$30
lda {screen_brightness}
sta $2100
sei
tsx
lda #$210c
tas
pei ({BG1&2_char})
pei ({BG3_tilemap})
pei ({BG1_tilemap})
pei ({BG_mode})
lda #$2132
tas
lda {color_math_enable}
ora #$2000
pha
pei ({window_sub})
pei ({sub_screen})
pei ({window_logic_OBJ})
pei ({window_pos_3})
pei ({window_pos_1})
pei ({window_set_OBJ})
pei ({window_set_1&2})
txs
cli
sep #$30
lda {window_color_green}
ora #$40
sta $2132
rep #$20
lda {window_color_blue}
ora #$0080
sta $2132
ldx {BG1xlo}
stx $210d
lda {BG1xhi}
sta $210d
lda {BG1yhi}
sta $210e
lda {BG2xhi}
sta $210f
lda {BG2yhi}
sta $2110
lda {BG3xhi}
sta $2111
lda {BG3yhi}
sta $2112
lda {BG4xhi}
sta $2113
ldx {BG4yhi}
stx $2114
lda {Mode_7_settings}
sta $211a
lda {par_A_hi}
sta $211b
lda {par_B_hi}
sta $211c
lda {par_C_hi}
sta $211d
lda {par_D_hi}
sta $211e
lda {par_X_hi}
sta $211f
ldx {par_Y_hi}
stx $2120
plp
rts


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 20 posts ]  Go to page Previous  1, 2

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group