Search found 218 matches
- Tue Apr 19, 2016 11:44 am
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (How do I shot HiROM?)
Let's put it this way: yes, you're going to try to do the best you can to make sure your code doesn't take too long and create lag frames. But in case it does happen (and it's likely there will be some edge case where it does), which would you rather happen? a) The game just lags. b) The game behave...
- Sat Apr 16, 2016 7:03 pm
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (How do I shot HiROM?)
Ah, that makes sense. In any case, you don't really need to worry about what exactly you get from reading open bus; just think of it as garbage data.
- Sat Apr 16, 2016 6:37 pm
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (How do I shot HiROM?)
"Open bus" means a place that isn't mapped to anything. AFAIK, what happens when you read from open bus is that you end up with whatever the last written/read byte anywhere was, even if it was a completely different location. So, if you read $77 from ROM, then read from open bus, you'd jus...
- Sat Apr 16, 2016 4:27 pm
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (How do I shot HiROM?)
Here's a simplified, high-level look at the SNES's memory map. Diagram The top-left diagram shows the memory map as the SNES sees it, basically. The white areas are passed to the cartridge, and the SNES doesn't care about how exactly the cartridge maps ROM to that space. The second row shows how the...
- Sat Apr 16, 2016 1:11 pm
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (How do I shot HiROM?)
$000000-$007fff is mirrored across every bank in $00-$3f and $80-$bf.
It doesn't even matter if you access them in the slow banks or the fast banks, because they always have the same access speed. (MEMSEL only affects ROM access speed.)
It doesn't even matter if you access them in the slow banks or the fast banks, because they always have the same access speed. (MEMSEL only affects ROM access speed.)
- Sat Apr 16, 2016 12:52 pm
- Forum: SNESdev
- Topic: Mode 1 12x12 trick?
- Replies: 19
- Views: 5868
Re: Mode 1 12x12 trick?
Given the fact that the 65816 can only shift one bit at a time, it's not quite as bad as you might expect. Division is done by doing one 16-bit store and one 8-bit store, waiting 16 cycles, then reading the result. However, you can also do other things during that wait period, so if you're clever ab...
- Sat Apr 16, 2016 11:59 am
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (How do I shot HiROM?)
Let's say Program Bank (K) is $40, Data Bank (B) is $18, and Direct Page (D) is $0300. Then: ; Short jumps use program bank (K) jmp $2000 ; $402000 ; Long jumps are absolute jml $672000 ; $672000 ; Direct page (D) is always in bank $00 lda $50 ; $000350 sta $80 ; $000380 and $70 ; $000370 ; 16-bit d...
- Fri Apr 15, 2016 11:14 pm
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (Not Even A Demo Yet Though...)
These charts are a bit messy because I hand-drew them, but maybe they'll help clear up the memory map for you? Hopefully they don't make things worse, anyway. The banks in $80-$ff are identical mirrors of $00-$7f, besides the different ROM access speed, and $7e-$7f being devoted to WRAM. Notice tha...
- Fri Apr 15, 2016 9:14 pm
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (Not Even A Demo Yet Though...)
$c08000-$c0ffff gets mirrored to $008000-$00ffff. $c00000-$c07fff doesn't get mirrored to bank $00 at all, because $000000-$007fff is taken by RAM/PPU registers/etc., just like in LoROM. Because bank $00 is still laid out basically the same for LoROM and HiROM ($0000-$7fff is system area, $8000-$fff...
- Fri Apr 15, 2016 6:55 pm
- Forum: SNESdev
- Topic: Mode 1 12x12 trick?
- Replies: 19
- Views: 5868
Re: Mode 1 12x12 trick?
KDL3 is 16x16.
- Fri Apr 15, 2016 6:49 pm
- Forum: SNESdev
- Topic: Mode 1 12x12 trick?
- Replies: 19
- Views: 5868
Re: Mode 1 12x12 trick?
I'd be surprised if it had been, at least with the first method; you end up sacrificing a whole BG layer, and burn some extra VRAM space to pad the 12x12 tiles to 16x16. KSS on the other hand is just three by three 8x8 tiles. It's fine for puzzle games, but the tradeoff's probably a bit iffy for mor...
- Fri Apr 15, 2016 3:06 pm
- Forum: SNESdev
- Topic: Mode 1 12x12 trick?
- Replies: 19
- Views: 5868
Re: Mode 1 12x12 trick?
Ahh, for some reason I didn't think about the individual scrolling of each layer. That would explain it.
- Fri Apr 15, 2016 2:44 pm
- Forum: SNESdev
- Topic: Mode 1 12x12 trick?
- Replies: 19
- Views: 5868
Mode 1 12x12 trick?
I noticed that in the Limitations article on the nesdev wiki, there's a casual mention of a "12x12 trick in mode 1", but I'm not sure what this could be referring to. Trying to search for information about it isn't yielding any results either. I can only imagine it has something to do with...
- Wed Apr 13, 2016 5:40 pm
- Forum: SNESdev
- Topic: SNES Splatoon (How do I shot HiROM?)
- Replies: 294
- Views: 65427
Re: SNES Splatoon (Not Even A Demo Yet Though...)
I can think of one problem with generating listings for macros at their definition, rather than at expansion. Using ca65 as an example: SOME_CONSTANT = 16 .macro Foo arg .if arg rep #$20 .a16 .else sep #$20 .a8 .endif lda #SOME_CONSTANT .endmacro How should the listing for the lda #SOME_CONSTANT lin...
- Wed Apr 13, 2016 4:21 am
- Forum: SNESdev
- Topic: Some question about Mode 7
- Replies: 22
- Views: 6794
Re: Some question about Mode 7
Just a heads up, you've got a typo in one of your macros here.