Search found 45 matches

by ISSOtm
Tue Mar 05, 2019 4:24 am
Forum: General Stuff
Topic: "return flase" causes PHP website to be hacked
Replies: 15
Views: 13289

Re: "return flase" causes PHP website to be hacked

Dynamically-typed languages are OK imo, the wrong part about PHP and JS is trying to make shortcuts (such as 0 == "0"), because it only tends to create breakage and unreadable code and people are going to move away from those. Here's a thing that makes me like JS way less than I'd like to: >>> [] + ...
by ISSOtm
Sun Mar 03, 2019 5:06 pm
Forum: GBDev
Topic: DevSound discussion
Replies: 18
Views: 21828

Re: DevSound discussion

dougeff wrote: Or maybe just using macros to make the source code easier to read. ?
The goal was to deduplicate code without increasing runtime costs, yes. Basically, all the channels share some code (mainly, the command reader and processor), so I basically made a giant `update_channel` ASM macro.
by ISSOtm
Fri Mar 01, 2019 4:40 am
Forum: GBDev
Topic: DevSound discussion
Replies: 18
Views: 21828

Re: DevSound discussion

I have a nearly-finished DevSound refactor that uses macros to avoid duplicating code between handling each channel - it's not complete because I can't wrap my head around some details in CH4, and DevEd is busy so I'm help-less (pun intended). I can publish it here, if there's interest.
by ISSOtm
Wed Feb 27, 2019 4:08 am
Forum: SNESdev
Topic: Need some tips for a demo
Replies: 37
Views: 20934

Re: Need some tips for a demo

t's actually backwards (inverted) for starters, which is tremendously confusing ($FFFF should be at the top of the diagram and $0000 at the bottom, not the other way around). How is that inverted? It's natural to have memory laid out in a reading order - $0000 is first in memory, so it's at the top...
by ISSOtm
Sun Feb 17, 2019 5:51 pm
Forum: SNESdev
Topic: Using SGB as a makeshift SNES flashcart
Replies: 15
Views: 16875

Re: Using SGB as a makeshift SNES flashcart

Hmm, this implies detecting the firmware version isn't trivial. I'll have to look further into it.
by ISSOtm
Wed Feb 13, 2019 7:06 pm
Forum: GBDev
Topic: The first frame is always white (test ROM)
Replies: 7
Views: 12549

Re: The first frame is always white (test ROM)

gekkio recently figured out the exact behavior behind the "blank frame": when turning the PPU/LCD on, no VSync signal is generated. The LCD screens respond by doing absolutely nothing, but the ICD2 works differently. Liji created two test ROMs, which turn the PPU off at specific LY values 1 . Notabl...
by ISSOtm
Tue Feb 12, 2019 1:57 am
Forum: SNESdev
Topic: Using SGB as a makeshift SNES flashcart
Replies: 15
Views: 16875

Re: Using SGB as a makeshift SNES flashcart

I know of three version of the SGB firmware (SGB1v0, SGB1v1, SGB1v2), I wonder how those map to the ICD2 revisions (I'd assume they do?). Eventually I'll complete my SGB1v2 disasm, then I'll be able to focus on comparing with other firmware revisions. Given the existence of JUMP and DATA_* packets, ...
by ISSOtm
Sat Feb 09, 2019 11:10 am
Forum: SNESdev
Topic: Using SGB as a makeshift SNES flashcart
Replies: 15
Views: 16875

Re: Using SGB as a makeshift SNES flashcart

Hmmm, are you sure that the SGB2 contains a "ICD2-N" chip? I don't know for sure if that's the case in all SGB2's. Interestingly, none of gekkio's gbhwdb entries have one. I've asked LIJI if they can confirm. And did you test the garbage in unused/readonly registers, too? On ICD2-R chips with [600F...
by ISSOtm
Fri Feb 08, 2019 11:43 pm
Forum: SNESdev
Topic: Using SGB as a makeshift SNES flashcart
Replies: 15
Views: 16875

Using SGB as a makeshift SNES flashcart

I have finished developing a small utility ROM that displays the SGB ICD2 version number, SNES PPU1 and PPU2 versions. It's very rough, intentionally displaying a lot of garbage. I've made it so it uses only the space games use for patching, as I'm not completely certain of the portability of other ...
by ISSOtm
Wed Feb 06, 2019 10:44 am
Forum: GBDev
Topic: Switching ROM banks
Replies: 20
Views: 17133

Re: Switching ROM banks

lidnariq wrote:Yes? I wasn't negating that.
Then I simply misunderstood you. :)
by ISSOtm
Tue Feb 05, 2019 1:32 am
Forum: GBDev
Topic: Switching ROM banks
Replies: 20
Views: 17133

Re: Switching ROM banks

I've heard gekkio say that A15 low meant ROM was selected, and /CS low meant SRAM selected. Here's the full message: gekkio 01/15/2019 > What's the behavior/role of the pins on the cart bus? It's good to think about the behaviour and role a bit separately, for example we can study timing separately ...
by ISSOtm
Mon Feb 04, 2019 5:43 pm
Forum: GBDev
Topic: Switching ROM banks
Replies: 20
Views: 17133

Re: Switching ROM banks

By the way, make sure you're driving A15 low last. It's used as a chip select signal. Here's something that should work: 1. Drive WR and RD high 2. Put data on data bus 3. Put address on address bus, A15 last 4. Drive WR low 5. Wait for one 1 MHz cycle (that should be enough) 6. Drive WR high again ...
by ISSOtm
Sun Feb 03, 2019 11:40 pm
Forum: GBDev
Topic: Game Boy CPU isn't a Z80. What is it?
Replies: 17
Views: 19777

Re: Game Boy CPU isn't a Z80. What is it?

The GB CPU is basically known to have a different architecture, probably fully custom. It's just for the most part binary compatible with 8080/z80, so no reshuffled opcodes, and devs could reuse a lot of code. A lot of its behavior is different from the two 80's, such as `di ; halt`. We're also not ...
by ISSOtm
Thu Jan 24, 2019 4:45 pm
Forum: GBDev
Topic: Starting guides for GBdev (audio-oriented)
Replies: 8
Views: 10752

Re: Starting guides for GBdev (audio-oriented)

For blargg's test ROMs, an incomplete source code RE effort can be found here . More (much more!) advanced test ROMs can be found here , although they require emulation of the PCMXX registers. As for learning how to program, I'm going to shill my own stuff , as I've got very positive feedback on it....
by ISSOtm
Thu Jan 24, 2019 1:06 am
Forum: GBDev
Topic: Starting guides for GBdev (audio-oriented)
Replies: 8
Views: 10752

Re: Starting guides for GBdev (audio-oriented)

Wait, a guide for development, or for emulation? Those are entirely separate.