> X is always 9-bits and Y is 9-bits in normal mode and 10-bits in double-resolution interlace mode.
> Yep, X is always 9-bit, Y is either 9-bit or 10-bit depending on whether interlacing is on or off.
I see, thank you! The SNES just doubles Y, so you can only move two pixels at a time in interlace ...
Search found 109 matches
- Sat Aug 20, 2016 7:33 pm
- Forum: Megadrive/Genesis
- Topic: Questions on developing a Mega Drive emulator
- Replies: 39
- Views: 48435
- Sat Aug 20, 2016 4:23 pm
- Forum: Megadrive/Genesis
- Topic: Questions on developing a Mega Drive emulator
- Replies: 39
- Views: 48435
Re: Questions on developing a Mega Drive emulator
More fun here. The SEGA splash screen for Sonic is supposed to have a white background, yet I get black:
http://i.imgur.com/3JDspVx.png
Comparing to Mednafen trace logs to confirm I am writing the correct values at the correct locations.
What I see for pixel 0,0 on the screen is that there's no ...
http://i.imgur.com/3JDspVx.png
Comparing to Mednafen trace logs to confirm I am writing the correct values at the correct locations.
What I see for pixel 0,0 on the screen is that there's no ...
- Sat Aug 20, 2016 12:12 pm
- Forum: Megadrive/Genesis
- Topic: Questions on developing a Mega Drive emulator
- Replies: 39
- Views: 48435
Re: Questions on developing a Mega Drive emulator
Mike, what's up with this from BlastEm?
int16_t y = ((context->sat_cache[cache_address] & 0x3) << 8 | context->sat_cache[cache_address+1]) & 0x1FF;
int16_t x = ((context->vdpmem[address+ 6] & 0x3) << 8 | context->vdpmem[address + 7]) & 0x1FF;
You're building sprite coordinates from ((hi&3)<<8 ...
int16_t y = ((context->sat_cache[cache_address] & 0x3) << 8 | context->sat_cache[cache_address+1]) & 0x1FF;
int16_t x = ((context->vdpmem[address+ 6] & 0x3) << 8 | context->vdpmem[address + 7]) & 0x1FF;
You're building sprite coordinates from ((hi&3)<<8 ...
- Wed Aug 17, 2016 2:10 pm
- Forum: Megadrive/Genesis
- Topic: Questions on developing a Mega Drive emulator
- Replies: 39
- Views: 48435
Re: Questions on developing a Mega Drive emulator
Whoo, brisk progress!
I have the best Sega Genesis game ever made already running! Just need input and audio output support to truly enjoy it :D
http://i.imgur.com/bZbo8Rl.png
The game is doing one weird thing, though.
001070 b22c cmp.b ($c00008),d1 00000001 000000df 00000000 0000ffff ...
I have the best Sega Genesis game ever made already running! Just need input and audio output support to truly enjoy it :D
http://i.imgur.com/bZbo8Rl.png
The game is doing one weird thing, though.
001070 b22c cmp.b ($c00008),d1 00000001 000000df 00000000 0000ffff ...
- Tue Aug 16, 2016 5:55 pm
- Forum: Megadrive/Genesis
- Topic: Questions on developing a Mega Drive emulator
- Replies: 39
- Views: 48435
Re: Questions on developing a Mega Drive emulator
Thank you everyone for the in-depth replies! :D
> Z80 you proabably cannot ignore for very long, there's plenty games that require Z80 to run to some extent.
Ah okay. I think in that case, I'll just start on a Master System emulator sooner to try and hash out a good Z80 core. I've emulated the ...
> Z80 you proabably cannot ignore for very long, there's plenty games that require Z80 to run to some extent.
Ah okay. I think in that case, I'll just start on a Master System emulator sooner to try and hash out a good Z80 core. I've emulated the ...
- Tue Aug 16, 2016 10:46 am
- Forum: Megadrive/Genesis
- Topic: Questions on developing a Mega Drive emulator
- Replies: 39
- Views: 48435
Questions on developing a Mega Drive emulator
Hi all! I've recently begun work on a new Mega Drive emulator. Needless to say, I have lots of questions. I was hoping I could ask for some clarifications here. Given I have so many, my hope was to roll them up into one thread to avoid flooding the board. I hope that's okay! I know this is asking a ...
- Tue Jan 13, 2009 5:16 pm
- Forum: Blabla
- Topic: Intrinsic functions
- Replies: 6
- Views: 8097
At least its had link-time code generation for the last six or so years. What decade do you think GCC will catch up? Would sure be nice not having to inline every critical function inside header filesChilly Willy wrote:Wow, MS compilers must really SUCK if you can't use inline assembly on them.

- Sun Dec 28, 2008 4:34 am
- Forum: Sound
- Topic: Genesis - SNES audio comparison
- Replies: 161
- Views: 142673
- Sat Dec 27, 2008 1:36 am
- Forum: Sound
- Topic: Genesis - SNES audio comparison
- Replies: 161
- Views: 142673
- Fri Dec 26, 2008 1:28 am
- Forum: Sound
- Topic: Genesis - SNES audio comparison
- Replies: 161
- Views: 142673
I'm not sure I understand what you're saying. Amiga MOD instruments are based on 8khz samples and they sound great. And that's 8bit PCM vs the DSP 16bit output.
I would posit that 8-bit PCM sounds better than 16-bit PCM encoded as 4-bit ADPCM, but I haven't listened to the two side-by-side before ...
I would posit that 8-bit PCM sounds better than 16-bit PCM encoded as 4-bit ADPCM, but I haven't listened to the two side-by-side before ...
- Sun Dec 14, 2008 1:46 pm
- Forum: Tools
- Topic: Kega Fusion v3.61
- Replies: 44
- Views: 52633
- Thu Dec 04, 2008 4:27 am
- Forum: Regen
- Topic: SegaCD and 32x
- Replies: 52
- Views: 63792
Probably not, its more likely that your context switches are not as optimal as they could be. Mine are down to two instructions, one of which I'd have to do anyway, and the other gets nicely pipelined and effectively takes less than a cycle.
Unless your cores only consist of one single monolithic ...
Unless your cores only consist of one single monolithic ...
- Thu Nov 27, 2008 8:59 pm
- Forum: Regen
- Topic: SegaCD and 32x
- Replies: 52
- Views: 63792
- Thu Nov 27, 2008 2:03 pm
- Forum: Regen
- Topic: SegaCD and 32x
- Replies: 52
- Views: 63792
- Sun Nov 23, 2008 7:17 pm
- Forum: Regen
- Topic: SegaCD and 32x
- Replies: 52
- Views: 63792
you can't use a volatile variable as the basis for a lock, or shared data between threads where more than one thread modifies the value. The reason for this is the simple fact that as soon as you read the variable, it has already potentially been modified by another thread before you can write to ...