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 has 1KB of RAM, not 2KB

Reply to topic
Author Message
  • Joined: 03 Oct 2011
  • Posts: 188
  • Location: New Zealand
Reply with quote
SG-1000 has 1KB of RAM, not 2KB
Post Posted: Sat Jan 12, 2013 5:26 pm
Hi All

We've discussed before whether the SG-1000 has 1KB of RAM on board or 2KB of RAM on board. The most recent discussion I can recall was in this thread

http://www.smspower.org/forums/viewtopic.php?t=13579

(The SG-1000 memory discussion starts about 2/3 of the way through the thread so scroll down)

I finally wrote a little test program and tried it on my SG-1000 II. I can confirm my SG-1000 II (with a Toshiba TMM2009AP) has only 1KB of RAM, NOT 2KB. My SC-3000 has 2KB of RAM on-board, as expected.

See attached test binary if anyone wants to confirm for themselves. The main program code follows below. It is a very simple routine that writes $16 to $C000, then writes the complement of that to $C400. If there is only 1KB of RAM, then the RAM mirroring will overwrite the byte at $C000. The process is then repeated with $C000 and $C800 to check for 2KB of RAM or greater.

Cheers
    ld   hl,$C000        ; check read / write to C000
    ; write $16 to C000
    ld   a,$16           ; = 00010110 binary
    ld   (hl),a
    ld   h,$C4           ; point hl to C400 - ie. just past end of first 1KB of onboard RAM
                         ; this will be mirrored if only 1KB of RAM
    cpl
    ; generate complement of $16 and write to C400
    ld   (hl),a          ; write the complement of $16 to C400
    ld   h,$C0           ; restore hl back to C000
    ld   a,(hl)          ; read value at C000 back
    cp   $16             ; is it still 16
    jr   nz,+            ; if not, then memory must be mirrored so only 1KB on board

    jr ++
    +:
    ld hl, RAMSizeIs1KB
    call write_text
    halt

    ++:
    ; Do it again, but this time check for 2KB vs larger than 2KB

    ld   hl,$C000        ; check read / write to C000
    ; write $16 to C000
    ld   a,$16           ; = 00010110 binary
    ld   (hl),a
    ld   h,$C8           ; point hl to C800 - ie. just past end of first 2KB of onboard RAM
                         ; this will be mirrored if only 2KB of RAM
    cpl
    ; generate complement of $16 and write to C800
    ld   (hl),a          ; write the complement of $16 to C800
    ld   h,$C0           ; restore hl back to C000
    ld   a,(hl)          ; read value at C000 back
    cp   $16             ; is it still 16
    jr   nz,+            ; if not, then memory must be mirrored so only 2KB on board

    ; otherwise, we have more than 2KB on board
    ld hl, RAMSizeIsLargerThan2KB
    call write_text
    halt
    +:
    ld hl, RAMSizeIs2KB
    call write_text
    halt

sg1000RAMSizeTest.jpg (629.41 KB)
SG-1000 II running test code and showing 1KB of RAM
sg1000RAMSizeTest.jpg
sg1000RAMSizeTest.rar (2.74 KB)
SG-1000 RAM Size Test Binary

  View user's profile Send private message Visit poster's website
  • Joined: 21 Jul 2005
  • Posts: 412
  • Location: GBG
Reply with quote
Post Posted: Mon Jan 14, 2013 5:54 pm
Yes I tried to implement this in S8DS a while ago and all the SG-1000 games I tested work with just 1kB RAM.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8653
  • Location: Paris, France
Reply with quote
Post Posted: Sat Feb 02, 2013 4:32 pm
Q*Bert seems to require 2 KB which also suggest that the Othello Multivision has least that.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8653
  • Location: Paris, France
Reply with quote
Post Posted: Sun Feb 03, 2013 11:23 pm
I have checked all other OMV game code, all games uses 1 KB of RAM apart from Q*Bert and the Othello Multivision ROM which uses 2 KB suggesting that the hardware itself has 2 KB.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14745
  • Location: London
Reply with quote
Post Posted: Mon Feb 04, 2013 12:24 am
Can you make a picture of the guts of an OMV?
  View user's profile Send private message Visit poster's website
  • Joined: 06 Feb 2009
  • Posts: 110
  • Location: Toulouse, France
Reply with quote
Post Posted: Fri Dec 27, 2013 6:06 pm
Bock wrote
I have checked all other OMV game code, all games uses 1 KB of RAM apart from Q*Bert and the Othello Multivision ROM which uses 2 KB suggesting that the hardware itself has 2 KB.


I just noticed this thread and after fixing this, it appeared that the Korean version of "Circus Charlie" also needs 2KB of RAM at $c000-$ffff (hangs on black screen if only 1KB is mapped/mirrored). Maybe the Korean SG-1000 had additional RAM too ?

As for Q-Bert, from what I tested, it seems to boot fine with only 1KB (mirrored), even if it indeed access RAM at $c7xx.
  View user's profile Send private message
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8653
  • Location: Paris, France
Reply with quote
Post Posted: Fri Dec 27, 2013 9:32 pm
Eke: Korea didn't have the SG-1000 series so they played those games on a Korean Mark III or SMS which has the full 8 KB.
  View user's profile Send private message Visit poster's website
  • Joined: 06 Feb 2009
  • Posts: 110
  • Location: Toulouse, France
Reply with quote
Post Posted: Thu Jan 30, 2014 7:35 pm
Indeed, you are probably right.

On the same subject, while looking for more infos on the various SG-1000 models, I noticed there was this thread:
http://www.smspower.org/forums/viewtopic.php?p=76422

linking to this SG-1000 II model



TMM2116AP-15 is a 2KB Static RAM according to this (old) datasheet
http://www.datasheetarchive.com/dlmain/Datasheets-X2/DSA627000271.pdf

(it's for TMM2016 but the 2116 version is likely similar)
http://www.radiomuseum.org/tubes/tube_tmm2116.html

So I guess there are some later models of SG-1000 II (those with the Sega integrated chip) with 2KB RAM
arasi3_k.jpg (104.27 KB)
Attachment fairy
arasi3_k.jpg

  View user's profile Send private message
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8653
  • Location: Paris, France
Reply with quote
Post Posted: Fri Sep 01, 2023 4:47 pm
Quote
I finally wrote a little test program and tried it on my SG-1000 II. I can confirm my SG-1000 II (with a Toshiba TMM2009AP) has only 1KB of RAM, NOT 2KB. My SC-3000 has 2KB of RAM on-board, as expected.


I was looking at this schematic
https://www.smspower.org/forums/files/esquema_sega_mark_ii1_159.png
(posted here https://www.smspower.org/forums/15878)

And counted 11 address lines for the TMM2116AP-10 RAM chip which would suggest 2 KB RAM, so this is indeed confusing.

My guess was the 2 KB RAM help matching SC-3000 to run SK-1100 based BASIC software? but it would be bizarre if there was 2 models of SG-1000 II and this wasn't documented in SK-1100 Basic software.
That or the Home Basic and B-21 BASIC cartridges can run on both 1 KB and 2 KB setups.

Theory 1
I would be surprised if Sega increased the RAM from 1 KB to 2 KB... rather maybe they decreased it in later production run thinking it wouldn't matter as few people used SK-1100 + Basic and wouldn't notice? As the games didn't use that extra RAM.

Theory 2
RAM got cheaper and they got hold of 2 KB chips. Used those. Could have wired the 11th address line or not wired it at all?

Honestbob would you be able to more tests?
  View user's profile Send private message Visit poster's website
  • Joined: 10 Dec 2009
  • Posts: 115
Reply with quote
Post Posted: Fri Sep 01, 2023 5:52 pm
Bock wrote
Quote
I finally wrote a little test program and tried it on my SG-1000 II. I can confirm my SG-1000 II (with a Toshiba TMM2009AP) has only 1KB of RAM, NOT 2KB. My SC-3000 has 2KB of RAM on-board, as expected.


I was looking at this schematic
https://www.smspower.org/forums/files/esquema_sega_mark_ii1_159.png
(posted here https://www.smspower.org/forums/15878)

And counted 11 address lines for the TMM2116AP-10 RAM chip which would suggest 2 KB RAM, so this is indeed confusing.

My guess was the 2 KB RAM help matching SC-3000 to run SK-1100 based BASIC software? but it would be bizarre if there was 2 models of SG-1000 II and this wasn't documented in SK-1100 Basic software.
That or the Home Basic and B-21 BASIC cartridges can run on both 1 KB and 2 KB setups.

Theory 1
I would be surprised if Sega increased the RAM from 1 KB to 2 KB... rather maybe they decreased it in later production run thinking it wouldn't matter as few people used SK-1100 + Basic and wouldn't notice? As the games didn't use that extra RAM.

Theory 2
RAM got cheaper and they got hold of 2 KB chips. Used those. Could have wired the 11th address line or not wired it at all?

Honestbob would you be able to more tests?



I have an SG-1000 II (with TMS9918) which has a TMM2116AP-15 SRAM chip. Line A10 looks not connected to this chip. I need to investigate.

  View user's profile Send private message Visit poster's website
  • Joined: 10 Dec 2009
  • Posts: 115
Reply with quote
Post Posted: Fri Sep 01, 2023 6:12 pm
Bock wrote
Quote
I finally wrote a little test program and tried it on my SG-1000 II. I can confirm my SG-1000 II (with a Toshiba TMM2009AP) has only 1KB of RAM, NOT 2KB. My SC-3000 has 2KB of RAM on-board, as expected.


I was looking at this schematic
https://www.smspower.org/forums/files/esquema_sega_mark_ii1_159.png
(posted here https://www.smspower.org/forums/15878)

And counted 11 address lines for the TMM2116AP-10 RAM chip which would suggest 2 KB RAM, so this is indeed confusing.

My guess was the 2 KB RAM help matching SC-3000 to run SK-1100 based BASIC software? but it would be bizarre if there was 2 models of SG-1000 II and this wasn't documented in SK-1100 Basic software.
That or the Home Basic and B-21 BASIC cartridges can run on both 1 KB and 2 KB setups.

Theory 1
I would be surprised if Sega increased the RAM from 1 KB to 2 KB... rather maybe they decreased it in later production run thinking it wouldn't matter as few people used SK-1100 + Basic and wouldn't notice? As the games didn't use that extra RAM.

Theory 2
RAM got cheaper and they got hold of 2 KB chips. Used those. Could have wired the 11th address line or not wired it at all?

Honestbob would you be able to more tests?



Confirmed. This chip is 2048 bytes. TMM2016AP/2116AP is used in C64 1541 II disk drive (see the attachment for the pins).

In my board the SRAM address line A10 (pin 19) is tied to GND (so, not used).

  View user's profile Send private message Visit poster's website
  • Joined: 24 Mar 2021
  • Posts: 120
Reply with quote
Post Posted: Fri Sep 01, 2023 6:21 pm
For the most part RAMs always have a capacity that's 4^n bits.

That Sega managed to special-order a 1KiB RAM (TMM2009), or that N managed to special order a 4KiB RAM in their Vs. System arcades (TC5533) seem to be very rare exceptions.
  View user's profile Send private message
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8653
  • Location: Paris, France
Reply with quote
Post Posted: Fri Sep 01, 2023 9:48 pm
Would be good to inspect all the chip YYWW dates on each sighting so we can figure out if 2 KB chip version came later or earlier.
  View user's profile Send private message Visit poster's website
  • Joined: 10 Dec 2009
  • Posts: 115
Reply with quote
Post Posted: Sat Sep 02, 2023 5:03 am
Bock wrote
Would be good to inspect all the chip YYWW dates on each sighting so we can figure out if 2 KB chip version came later or earlier.


The standard 74LSxx are 8522.
The SRAM is 8450.
  View user's profile Send private message Visit poster's website
  • Joined: 10 Dec 2009
  • Posts: 115
Reply with quote
Post Posted: Sat Sep 02, 2023 5:53 am
Bock wrote
Would be good to inspect all the chip YYWW dates on each sighting so we can figure out if 2 KB chip version came later or earlier.


Hi. Who's in charge do modify this?

https://www.smspower.org/Development/CartridgeSlot

Probably the SG-1000 II column should be splitter in two versions: the TMS9918 one and the integrated chips one.

Mine (TMS), for example has the /M1 and /RFSH pins as the SG-1000 (Mark I).
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14745
  • Location: London
Reply with quote
Post Posted: Sat Sep 02, 2023 7:19 am
You should be able to edit the page.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8653
  • Location: Paris, France
Reply with quote
Post Posted: Sat Sep 02, 2023 9:45 am
(1) This flyer (attached) refers to the system as 1 KB.

(2) This page says 1 KB:
https://www.sega.jp/fb/segahard/sg1000_2/data.html

(3) I looked at a SG-1000 II manual which curiously has specs in the back but main RAM is not listed!
Quoting:

"
CPU: Z-80A (4MHz)
Memory: ROM: 8-48 KB (Option)
Memory: RAM: for Graphics: V-RAM 16 KB
"

(4) The notorious mistake is in the 2001 "Sega Consumer History" book, which has multiple mistakes:

(Page 28) SG-1000: RAM 8 Kbit (1 KB), VRAM 16 KBit (2 KB)
First mistake: someone probably assumed VRAM 16 KB was "too much" and attempted to "correct it" into Kbit and made a mistake.

(Page 32) SG-1000 II : RAM 16 Kbit (2 KB), VRAM 16 KBit (2 KB)
Here doubled the amount of RAM from first SG-1000, and kept the same error for VRAM.


I do find the lack of RAM mention in the manual (3) particularly surprising.
Maybe they felt it was too low compared to other systems and wanted to hide it a little.

Maybe the SG-1000 II was originally designed with 2 KB in mind but they changed their mind or had technical issues late in the process and needed to ensure the line was disconnected to avoid issue in future revisions?

Maybe they had too many spare parts originally ordered for SC-3000 (or for earlier design of SG-1000 II) and just used those chips?

Either way it's safe to assume the system is 1 KB from user's point of view.
IMG_8774.jpg (136.26 KB)
IMG_8774.jpg

  View user's profile Send private message Visit poster's website
  • Joined: 10 Dec 2009
  • Posts: 115
Reply with quote
Post Posted: Sat Sep 02, 2023 1:37 pm
Maxim wrote
You should be able to edit the page.


Ok. Thanks.
  View user's profile Send private message Visit poster's website
  • Joined: 10 Dec 2009
  • Posts: 115
Reply with quote
Post Posted: Sat Sep 02, 2023 1:43 pm
Bock wrote
(1) This flyer (attached) refers to the system as 1 KB.

(2) This page says 1 KB:
https://www.sega.jp/fb/segahard/sg1000_2/data.html

(3) I looked at a SG-1000 II manual which curiously has specs in the back but main RAM is not listed!
Quoting:

"
CPU: Z-80A (4MHz)
Memory: ROM: 8-48 KB (Option)
Memory: RAM: for Graphics: V-RAM 16 KB
"

(4) The notorious mistake is in the 2001 "Sega Consumer History" book, which has multiple mistakes:

(Page 28) SG-1000: RAM 8 Kbit (1 KB), VRAM 16 KBit (2 KB)
First mistake: someone probably assumed VRAM 16 KB was "too much" and attempted to "correct it" into Kbit and made a mistake.

(Page 32) SG-1000 II : RAM 16 Kbit (2 KB), VRAM 16 KBit (2 KB)
Here doubled the amount of RAM from first SG-1000, and kept the same error for VRAM.


I do find the lack of RAM mention in the manual (3) particularly surprising.
Maybe they felt it was too low compared to other systems and wanted to hide it a little.

Maybe the SG-1000 II was originally designed with 2 KB in mind but they changed their mind or had technical issues late in the process and needed to ensure the line was disconnected to avoid issue in future revisions?

Maybe they had too many spare parts originally ordered for SC-3000 (or for earlier design of SG-1000 II) and just used those chips?

Either way it's safe to assume the system is 1 KB from user's point of view.



Maybe they had stock of 2KB chips from Mark III and they decided to use it forcing it to 1KB for compatibility reasons. Who knows.

For sure my SG-1000 II has the same cartridge pinout of the first SG-1000 (/M1 and /RFSH pins included).
  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!