Sega SC-3000

Introduction

Those of us that live outside of Japan probably think of the Master System as Sega's first games console, which although not true, the Master System was indeed Sega's first international games console. Prior to the Master System, however, was the SG-1000 released in 1983 and its cousin, the SC-3000 (Sega Computer 3000) also released in 1983, which was essentially a PC-like version of the SG-1000, adding a keyboard and a number of interface ports.

While the SG-1000 saw limited release outside of Japan - Australasia and Taiwan - the SC-3000 was, in addition to Japan, also sold in France, Australia, New Zealand, Italy and Finland but sadly not the UK. The Sega keyboard SK-1100, available in Japan in 1984, is an add-on for the SG-1000 which essentially upgrades it to an SC-3000 by also providing the interface ports of the SC-3000. Please see the SK-1100 keyboard section for more information.

The SC-3000 is the only computer that Sega have made but there have been other 'Sega' PCs, which are the Sega TeraDrive (manufactured by IBM) and the Amstrad Mega PC (produced by Amstrad), both of which feature a built-in Mega Drive. The TeraDrive was only released in Japan, in 1991, and sold badly and that was also the case for the Mega PC, which was released in Europe and Australia in 1993. Both systems had outdated specs when they went on sale and neither could be used as Mega Drive SDKs (although the PC part of the TeraDrive was able to access the Mega Drive components).

Please note that, unless otherwise stated, all screenshots on this page were taken using the SC-3000's composite video connection.

Overview

The SC-3000 appears like a typical microcomputer of the time, featuring a built-in keyboard, various ports allowing the use of a number of peripherals and the ability to be connected to a TV/monitor. The keyboard has 64 keys including separate arrow keys, something not to be taken for granted with 8-bit computers of the time. The keyboard appears to be of the membrane type with the keys separated by a considerable amount, resulting in not the best experience when typing. There is a variant of the SC-3000, the SC-3000H, which instead of having rubberised keys has a mechanical keyboard instead.

Each key has an English letter or number, some also have one or more simple graphic symbols (like the Commodore 64) and on the Japanese keyboard some keys additionally have Japanese characters and non-Japanese versions have diaeresis characters. Please see the BASIC section for more information as to how the keyboard is used.

Unfortunately, the SC-3000 is without built-in programming software (e.g., BASIC) as would have been typically the case for microcomputers of the time, and the SC-3000 cannot be used at all without a cartridge plugged into the computer; if you power on the system without a cartridge inserted you will get a blank screen. The cartridge socket is on the right-hand side of the system and as well as games software released on cartridges, a number of BASIC cartridges were on sale so that the SC-3000 could be used like a more typical computer.

At the back of the system are the following: RF socket for connecting to a TV, video port for connection to a monitor, printer port, cassette in and out ports, power in socket and power switch. As well as using the power supply that originally came with the SC-3000 it can also be powered with a Mega Drive 1 or Master System 1 power supply (the voltage is a little higher than the SC-3000's stated input voltage but since the computer has a built-in voltage regulator it's not a problem to use a slightly higher voltage), which is convenient if using an imported model.

At the left side of the SC-3000 are 2 DE-9 joy ports which are compatible with SG-1000, Master System, and Mega Drive controllers.

The spec of the SC-3000 is:

Z80 CPU @ approx. 4MHz (3.579545MHz NTSC/3.58MHz PAL)

2KB main RAM.

16KB video RAM.

TMS9918 (NTSC) or TMS9929 (PAL) Video Display Controller.

SN76489 Digital Complex Sound Generator.


According to the European service manual the CPU in the NTSC system runs at 3.579545MHz and the clock is derived from the video chip whose clock is divided by 3 whereas for PAL it’s 3.58MHz as Sega couldn’t derive the CPU clock easily from the video chip’s clock, so a separate oscillator of 3.58MHz is used. However, other sources, such as the Sega Retro site state that the PAL CPU clock is 3.546893 MHz:


https://segaretro.org/SC-3000


Others sites (at the time of writing this article) - including Wikipedia - quote a 4MHz CPU clock since that was stated on an official Sega site, but that may be a rounded up or preliminary value. This is the site Wikipedia references:


https://sega.jp/fb/segahard/sc3000/data.html


To compare, the ZX Spectrum, first released in 1982, also featured a Z80A running at 3.5MHz but clock speed is, of course, only one factor in a computer's performance.


All NTSC systems and most PAL systems output composite and mono audio via the video port, however, there is a PAL version that provides RGB only through the video port and has an 8-pin connector rather than the 5 pin for composite output systems. The TMS9918 video chip in the NTSC systems outputs composite only but the TMS9929 chip outputs component video signals that can be converted to RGB.

More main RAM could be added to the SC-3000 through use of certain cartridges: for example, BASIC level II B added 4KB of RAM. Nowadays, we are used to adding RAM just to the computer itself but at the time it was not unusual to add more hardware to a computer or console through a cartridge that also contained software.

The SC-3000 only sold 120,000 units worldwide and was discontinued in 1985 and although considered a failure it set the foundation for the Master System which saw worldwide release and great success.

Please see this video for an overview of the SC-3000 to see the machine and some games in action:

Software

The SC-3000 is compatible with SG-1000 cartridge games, and Sega MyCard games through use of the Card Catcher adapter (please see the Accessories section for more information). There was a wide range of software designed especially for the SC-3000, some of which was unique to each of the countries in which the SC-3000 was released. A lot of the software is educational; there is BASIC programming, finance software, graphic design, maths, and much more. As for the video games, there is the political simulator Empire, the graphical text adventure Alien, the shoot-'em-up Kamikaze, and Pac-man clone Crocky, to give a few examples. For a computer created in Japan, the Japanese actually produced the fewest number of software titles for the SC-3000 compared to Australia and New Zealand in particular.

Music Editor is a simple music notation software that lets you put together music and play it back, as seen in this video:

Some other notable software titles:

Astrododge: unlicensed game for the SG-1000/SC-3000 released in 2013, 30 years after the SC-3000 went on sale, European release.

Multicart Mk II: unlicensed collection of games, demos and other software, available in 2013, from SC-3000 Survivors, New Zealand release.

Segacom: communication software for use with John Sands SM1200 Micromodem 3, Australia only.

For a full list of SC-3000 software titles please see this site:

https://segaretro.org/Category:SC-3000_games

Check out this video for a look at a number of different SC-3000/SG-1000 games:

BASIC

While most microcomputers of the time typically had a programming language built-in, which was usually some form of BASIC, the SC-3000 did not, however, a number of different BASIC cartridges were released for the system. This section should be relevant to all forms of BASIC level III available for the SC-3000, however, for reference I used BASIC level IIIA on a Japanese SC-3000 to try out BASIC, as that's all I had. Fortunately, by the nature of BASIC consisting of English words there is no need to know Japanese should you have a Japanese system/BASIC cart and the error messages are also in English.

The BASIC has many useful keywords, to operate graphics, sound, read the joystick state, view and change memory, I/O, as well as many standard maths functions and so on. Consider that the Commodore 64, for example, required users to POKE values to memory to operate the graphics and sound rather than have BASIC keywords to provide those functions, which would have provided a more friendly interface, although the C64 was still very successful.

With the BASIC cartridge inserted the system boots with a beep and a brief green screen shows before the start-up text appears, as below:

BASIC commands can be entered, which are executed as soon as CR (Carriage Return) is pressed, or programs can be written by placing line numbers before commands and then run in sequence using the RUN command, which is all standard for a BASIC system.

A key pressed on its own produces the character at the lower left of the key and shift pressed with a letter key produces the lower case and shift and a number outputs the top left symbol on the key. When you press the GRAPH key the cursor changes to * (as indicated above the key) and pressing a key will generate the symbol top right of the key, and shift and a key produces the symbol top left. There is a key to the right of the GRAPH key called ENG/DIER’s on the international version and there is an equivalent key for the Japanese version. When the key is pressed the cursor changes from chequered to solid and pressing it again returns the cursor to chequered; the two cursor types are shown above the key for reference. When in diaeresis mode (solid cursor), the bottom right symbol of the key is generated, which on the Japanese version produces alternate Japanese symbols. In diaeresis mode, shift can be pressed with some keys to generate a smaller version of the symbol.

Editing programs is straightforward as you can list a program or an individual line (LIST, LIST 100, etc.) and then use the arrow keys to move to the line to edit, make the changes and then press CR to commit changes to memory, something not to be taken for granted considering some other implementations of BASIC. The INS/DEL key deletes the character to the left of the cursor and to insert a character first move to the required position using the cursor keys and press shift and INS/DEL. The cursor will then blink rapidly and typing any key will insert that character. Press CR to exit insert mode and commit the changes to memory.

Although you can type out keywords using individual characters you can also press the FUNC key and a number or letter to produce the keyword as written above the key, speeding up writing programs. Annoyingly, every time a key is pressed the system will beep and a double beep sound will play if an error occurs, such as a syntax error. While the error sound cannot be disabled the single beep with each key press can be turned off using CTRL + X (press again to re-enable the beep).

The BEEP keyword can be used to produce a single beep, useful in BASIC programs to alert the user of a problem, for e.g. BEEP can take a value after it, such as BEEP 2, which will generate a double beep, the same as when an error occurs. The key combination CTRL + G will also trigger a beep. Some other, useful shortcuts:


CTRL + N: same as DIER’s key.

CTRL + O: same as shift + break.

CTRL + T: caps lock off. Causes lowercase letters to be the default with shift and a letter key producing upper case.

CTRL + S: caps lock on. Letter keys produce upper case or lower case if shift used with the key.

CTRL + W: same as GRAPH key.

CTRL + R: same as insert mode (shift and INS/DEL).


PRINT CHR$() can be used to generate control codes, for e.g., PRINT CHR$(7) makes a beep, same as CTRL + G.

For producing sounds other than simple beeps the SOUND keyword comes into play and there are different forms that take a different number of parameters but the simplest is:

SOUND channel, frequency, volume

SOUND plays via a single channel and you can specify any of the 4 channels (0-5). Frequency starts at 110 (110Hz) but there doesn’t seem to be an upper limit but of course if you do specify too high a value nothing will be heard.

When SOUND is used it will keep playing when used in direct mode (not from a BASIC program) unless a key is pressed. In a BASIC program SOUND 0 will turn off any sound that is playing.

Moving on to the visual side, to alter the text and background colours, use the COLOR statement followed by a number representing the text and background colour. E.g.:

COLOR 1,15

Note that you must use the American spelling (color) for colour.

The above BASIC line sets the text colour to be black (1) and the background colour to white (15). Unlike other computers of the time, changing the text colour alters the colour for all text on the screen, a big limitation of the video chip, and if you want to change only the background colour you must also specify the text colour.

Here is an example of changing the text colour to white and the background to black using COLOR 15,1:

The available colours and their associated values are as follows:

0 Transparent 9 Light red

1 Black 10 Deep yellow

2 Green 11 Light yellow

3 Light green 12 Dark green

4 Dark blue 13 Magenta

5 Light blue 14 Grey

6 Dark red 15 White

7 Cyan

8 Red

Colour 0 can actually be used for the text/background colour and COLOR 0 will indeed make text vanish and if you set the background to transparent, e.g., COLOR 1,0 the screen blanks completely.

Good ol' PRINT is there which is useful for outputting strings to the screen using the usual format, e.g. PRINT "HELLO WORLD" and ‘?’ functions as shorthand for PRINT.

For responding to an attached controller, STICK() returns a value in relation to the stick direction. Pass ‘1’ for P1 joystick or ‘2’ for P2 joystick. Returned values are as follows:

0: no direction

1: N

2: NE

3: E

4: SE

5: S

6: SW

7: W

8: NW

STRIG() gives a value dependent on what trigger button(s) are pressed and as with STICK(), pass a ‘1’ or ‘2’ as required. The values are:

0: No button

1: Left trigger

2: Right trigger

3: Both triggers

You could use this simple program to test both controllers by displaying the previously mentioned values:

10 PRINT STICK(1);: PRINT STRIG(1);: PRINT STICK(2);: PRINT STRIG(2)

20 GOTO 10

Press the break key to halt the program. Note that while BREAK on its own stops a running program, shift + BREAK switches between the text and graphics screens. If things ever go really bad you can press RESET which, thankfully, doesn’t clear the program from memory.


The BASIC supports drawing shapes to the graphics screen and when you run such a BASIC program, when the program ends it will return to the text screen. You can use a loop at the end of the program to effectively add a pause or use a GOTO to ensure the graphics screen remains visible until BREAK is pressed so that you have chance to see the graphics that were displayed.


The text screen can’t display graphics aside from the simple symbols available on the keyboard and only 2 colours can be used. The graphics screen can have 15 colours at once and lines, shapes and sprites can be used. The size of the graphics screen is 256 x 192, represented as values 0 to 255 and 0 to 191 respectively. The graphics screen can use a more advanced form of the COLOR statement to fill in parts of the screen and border different colours in a somewhat limited manner, e.g. have the screen split in 2 with one colour on the left and a different colour on the right.


Patterns of 8 x 8 pixels can be created and assigned to the keys of the keyboard or used with sprites; the PATTERN keyword defines a single pattern. It’s a little odd to use as it requires a pattern be split vertically and each nibble represented as a hex character. A sprite is create using the SPRITE keyword and can set a PATTERN to use as defined previously by the PATTERN keyword. There are 32 layers for the sprites each with their own drawing priority, with 0 as highest priority (appears in front of everything else) and higher numbers have lower priority and thus appear further into the background. Sprites can also be joined together to form larger sprites using the MAG keyword.

This was just a brief look at BASIC, be sure to experiment and see what you can program and to help you out, here is a link to BASIC level IIIB manual, Australian version, which should be helpful for all variations of BASIC level III:

https://segaretro.org/images/9/99/Basic_Level_IIIB_SC3000_AU_Manual.pdf

Accessories

4 Color Plotter Printer SP-400

For software that supported it (i.e. BASIC), the SP-400 is a printer/plotter that can print in black, red, blue and green, and was released in Japan, Australia and New Zealand sometime in 1983 to 1984. The printer uses a dedicated 6805 microcontroller, has a built-in ROM, and connects to the SC-3000's printer port (or SG-1000 with the SK-1100 keyboard add-on) and uses a TTL level serial interface. The printer uses an Alps mechanism and can print both text and graphics but uses a specialised paper roll and coloured pens which may nowadays be difficult to source although there are likely similar printers at the time that use the same paper and pens. This should also be kept in mind with regards to repairing an SP-400 as a common fault with the printer is for a gear to break so should this happen you may have to get a replacement part from another, similar printer that uses an Alps mechanism.

On the top of the printer at the left is the printer mechanism and on the right are power and busy LEDs, and to the right of them is the line feed, colour select and pen change switches. The line feed button not surprisingly feeds the paper into the mechanism and the colour select button changes the coloured pen to be used, which is normally done automatically, but can be used in conjunction with the pen change button to aid removing and changing pens.

Please see this video (and check out the user's other videos) for a look at the SP-400 in action:

The thread linked below also has some very useful information about the SP-400, which is from the same user of the video above:

https://www.smspower.org/forums/15635-SegaSP400PlotterPrinterVideo

A/V Cable SD-80

The SD-80 is an A/V cable that was only released in Japan and was designed especially for the SC-3000, featuring a DIN connector on one end to plug into the SC-3000 and two phono connectors on the other end for video and sound, to connect to a TV. Please see this site for photos:

https://segaretro.org/SD-80

Card Catcher

The Card Catcher is a cartridge adapter for the SC-3000 (and a number of other Sega products such as the SG-1000) which added support for software released on media known as 'Sega MyCard', a cheaper version of standard cartridges in the form of a card, which could store much less data (up to 32KB). Sega's reasoning was that the games that needed a high amount of storage could be released on traditional cartridge format and the smaller capacity games could use the card format. This concept also found its way to the Master System.

For more information about the MyCard format please see:

https://segaretro.org/Sega_MyCard

For pictures of the Card Catcher and more details please see:

https://segaretro.org/Card_Catcher

Data Recorder SR-1000

Released in Japan and Australia in 1983 the SR-1000 allowed the loading of software on cassette, a cheaper media for software compared to floppy disk and cartridge software. As well as being compatible with the SC-3000, the SR-1000 can also be used with the SG-1000 by use of the SK-1100 keyboard. The SR-1000 runs off its own power supply and connects to a SC-3000/SG-1000 using the cassette in and out ports on the computer.

Please see this site for more information and photos:

https://segaretro.org/Data_Recorder_SR-1000

Super Control Station SF-7000

The SF-7000 is a 3 inch floppy disk unit for the SC-3000 that was available to buy in Japan, Australia and New Zeland in 1984, which added support for Sega Compact Floppy Disks. Not only did the SF-7000 add support for floppy disks but also included 64KB of RAM, 8KB of ROM, a Centronics printer port and RS-232 serial port. The SF-7000 connects to the SC-3000 using an 'I/O cassette' cartridge (Japanese refer to a cartridge as a cassette) that plugs into the SC-3000's cartridge port.

While the extra memory was of great benefit, the choice of 3 inch floppy disk as opposed to the more common 3.5 inch floppy disks resulted in a lack of software in the format.

Please see this site for photos and more information:

https://segaretro.org/Super_Control_Station_SF-7000

SK-1100 keyboard

Introduction

Released only in Japan, in 1984, the SK-1100 is a keyboard add-on for the SG-1000 which upgrades it to an equivalent SC-3000 system by providing the interface ports of the SC-3000 in addition to the keyboard. Unfortunately the setup does cause some compatibility issues in that some BASIC SC-3000 cartridges will not work so BASIC SK-III was released to fix that issue.

The keyboard originally came in a cardboard box with a polystyrene tray with 'SEGA' embedded into it and various documentation was included. On the top of the box 'SK-1100 SG-1000 Series Keyboard' is written and there are various screenshots of software and of course the keyboard itself. On the four sides of the box there are similar images but on the two long sides a 'complete' SG-1000 setup is shown with TV, SG-1000, joysticks, SR-1000 cassette player, SK-1100 & SP-400 printer.

The top of the keyboard has 'SEGA SK-1100 SG-1000 Series Keyboard' written on it and on the bottom it has the model number 'SK-1100' and the serial number. At the rear of the keyboard is a ribbon cable with 24 x 2 keyed edge connector at the end to mate with the SG-1000's expansion connector, an Out port (cassette player), an In port (cassette player) and a 7-pin DIN printer port.

You may want to check out Sega retro's page on the SK-1100 for photos:

https://segaretro.org/Sega_Keyboard

Technical

Technical information , including schematic and key mapping:

http://www43.tok2.com/home/cmpslv/Mark3/Sk1100.htm

Page is in Japanese but you can right-click the page and select to translate to English.

Please note there appears to be a mistake in the schematic: the 74LS245 is labelled as IC5 but is actually IC2 since IC5 is a HIC-1, as also indicated on the schematic. I've checked with my own SK-1100.

Notes: the connections on the right side of the schematic (X0, X1, ... Y5, Y6) are the keyboard connections. The connections at the bottom right (/FAULT, BUSY, ... N.C) are the printer connections. The connections on the left (VCC, ... GND) are the expansion port signals.

There is also some information on this page about the SK-1100 and how it interfaces with an SG-1000:

http://www43.tok2.com/home/cmpslv/Sg1000/EnrSG.htm

There are more SK-1100 schematics and other technical information at:

https://www.smspower.org/forums/17652-SegaKeyboardSK1100

At the bottom of the page there is mention of getting the SK-1100 running on a Master System but not much details how it was achieved.

To take the SK-1100 apart there are 6 screws that have to be removed from the underside, 1 of which that is much smaller than the others. You can then carefully begin to pull apart the two pieces but as the keyboard is attached to the main board with two ribbon cables you have to be careful although thankfully flat flex cables weren't used. I didn't realise at the time but you should be able to remove the keyboard cables from the main PCB, going by photos I found online after disassembling the SK-1100 myself.

If you don't want to detach the keyboard cables then you can unscrew the main board, carefully stretching out to the two ribbon cables to allow more distance between the two plastic pieces, allowing you to remove the main board screws by holding the top plastic piece in different positions. Oddly, my SK-1100's main board has only 3 screws fitted even though there is space for a fourth but a photo I came across online also shows only 3 screws were used but one of them is in a different place - did Sega skimp on screws?

The main board is single sided, so soldering, such as to do repairs, should be straightforward. The PCB is marked as '171-5140.' and '(C) SEGA 1984'. The main components are:

CN1 & CN2 are the keyboard cables.

CN3: expansion connector:.

CN4: printer port:.

IN & OUT connectors do not have a 'CN' number.

Date codes on ICs look to be '84.

IC1 TMP8255AP-5 general purpose programmable I/O device

IC2 74LS245 Octal bus transceivers with 3-state outputs

IC3 74LS244 Octal buffers and line drivers

IC4 74LS145 BCD to decimal decoder/drivers

IC5 MITEC HIC-1 Hybrid package. Handles the cassette interface. See https://console5.com/wiki/HIC-1

IC6 74LS02 Quad NOR gate

Keyboard PCB

Has markings 'SMK1994HB', '834-5228-01', and '(171-5049)'. The pinout for both keyboard connectors is marked on the keyboard PCB.

Links

A site dedicated to the SC-3000 and preserving the hardware and software associated with it as well as information about repairs, emulators and games.

http://www.sc-3000.com/

Sega Retro has a lot of information about the SC-3000 and its games and accessories:

https://segaretro.org/SC-3000

Service manual:
https://segaretro.org/images/e/eb/SC-3000ServiceManual.pdf

User’s manual
https://www.progettosnaps.net/manuals/pdf/sc3000.pdf

Sega SC-3000H hardware notes:

https://www.smspower.org/uploads/Development/sc3000h-20040729.txt

Teach yourself BASIC games programming:
https://archive.org/details/Teach_Yourself_Basic_Games_Programming_1984_NZ/page/n1/mode/2up

SC 3000 Programmers Manual - NZ:
https://www.smspower.org/Scans/SC3000ProgrammersManual-Book-NZ

All content of this and related pages is copyright (c) James S. 2020-2022