Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - SG-1000 NMI

Reply to topic
Author Message
  • Joined: 25 Feb 2013
  • Posts: 384
  • Location: Osaka
Reply with quote
SG-1000 NMI
Post 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?
  View user's profile Send private message
  • Joined: 19 Apr 2019
  • Posts: 19
  • Location: Canada
Reply with quote
Post 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.
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2013
  • Posts: 384
  • Location: Osaka
Reply with quote
Post 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.
sg1000snd.png (16.06 KB)
sg1000snd.png

  View user's profile Send private message
  • Joined: 14 Aug 2000
  • Posts: 740
  • Location: Adelaide, Australia
Reply with quote
SG-1000 NMI
Post 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?
  View user's profile Send private message
  • Joined: 19 Apr 2019
  • Posts: 19
  • Location: Canada
Reply with quote
Post 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.

  View user's profile Send private message Visit poster's website
  • Joined: 14 Aug 2000
  • Posts: 740
  • Location: Adelaide, Australia
Reply with quote
SG-1000 NMI
Post 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.
  View user's profile Send private message
  • Joined: 19 Apr 2019
  • Posts: 19
  • Location: Canada
Reply with quote
Post Posted: Wed Apr 06, 2022 8:01 pm
kamillebidan wrote
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.


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 :)
IMG_0365.jpg (1.8 MB)
IMG_0365.jpg

  View user's profile Send private message Visit poster's website
Reply to topic



Back to the top of this page

Back to SMS Power!