|
ForumsSega Master System / Mark III / Game GearSG-1000 / SC-3000 / SF-7000 / OMV |
Home - Forums - Games - Scans - Maps - Cheats - Credits Music - Videos - Development - Hacks - Translations - Homebrew |
Author | Message |
---|---|
|
SG-1000 NMI
Posted: Wed Jun 17, 2020 1:15 am
|
I was looking at this schematic of the sg-1000 here and I do not understand the circuit controlling the NMI.
When pin 11 of IC13 goes low (IO to the PSG), NMI is the transistor's Vbe + R4/ (R4+R5+R6) = about Vbe, which may trigger NMI. clearly this is not the intended behavior. Is the schematic wrong? or am I wrong? I do not get the intent of the circuitry either. I guess something like not allowing NMI while the psg is enabled? and what about M1? |
|
|
Posted: Tue Apr 05, 2022 3:55 am |
Have you gotten anywhere with this problem? I had started making a clone SG-1000 off of the same schematics, but used a 2n3906.
With the 2n3906 installed at Q1c, the game plays fine but the sound is not working (/CS_PSG never seems to get triggered.) With the 2n3906 removed, the sound plays perfectly, but the CPU will freeze (stuck on /CS_PSG) in Flicky if I try to move around, scrolling the screen. I suspect that the 2n3906 has the wrong on-time or some other timing issue, compared to the original transistor used. I do not really understand this circuit either. I thought at first it was intended to prevent going into NMI while an instruction decode/fetch/execute/etc was underway, but I would expect the CPU would just wait to enter NMI until it was "ready" regardless of what the pin was set to. Thank you for any help you can provide. |
|
|
Posted: Tue Apr 05, 2022 4:23 am |
My guess (I would love to check the real hardware) is that there's an error in the schematic, and that the attached schematic is the correct one.
|
|
|
SG-1000 NMI
Posted: Tue Apr 05, 2022 4:26 pm
|
It looks like a mistake in Enri's schematic.
I traced the Hold button to the NMI pin on the 171-5048 board. It doesn't connect to the transistor. Are you willing to share some photos of you SG-1000 clone? |
|
|
Posted: Tue Apr 05, 2022 6:46 pm |
Sure thing. There are quite a few errors in the board already (like the controller ports being on backward) but it plays a good game of Flicky so far.
Once I get this version working, I will order another board with a keyboard connector and start work on an SK-1100 clone.. that will probably be harder since I’ll have to make a case. Of course it will all be open-source like my ColecoVision clone was. Thanks for checking on the original board!! I don’t have access to a real unit, only an SC-3000 which doesn’t seem to have a pause button at all. |
|
|
SG-1000 NMI
Posted: Wed Apr 06, 2022 1:39 am
|
Very cool, thanks for sharing.
The Hold button circuit is just a switch with a pull-up resistor and then a series resistor to the NMI pin. There is a capacitor to ground between the series resistor and Z80 NMI pin but it’s not populated on the board I traced. That means there’s not much in the circuit for debounce so that may be something you may want to test. |
|
|
Posted: Wed Apr 06, 2022 8:01 pm |
I bodged this circuit together on the top of my board, and now I can get away with a full round of Flicky (I still die, but that's on me.) It's interesting that the music seems to "hang" a note or two in the same spots where it used to crash; I am guessing this is meant to keep the sound chip from putting the Z80 in /WAIT at an inopportune moment during the instruction fetch & decode. I will make a new thread when I get around to starting on the v2 board and keyboard (cloning the SC-3000 with an internal BASIC ROM and the full use of the 32K of RAM is my actual eventual hope on this one.) Thanks for all of the help, I have credited you both on the new version of the board – please PM me if you'd rather be credited under something other than your forum nick :) |
|