COSMACog CDP1802 Emulator
ctwardell
Posts: 1,716
Edited: 9Nov12
COSMACog is an emulator for the RCA COSMAC 1802.
I'll use this thread to release info and source as the project proceeds.
The COSMACog 1802 uses a single cog to emulate the 1802 with other cogs providing
system control, memory, and video support.
A minimal system takes 3 cogs:
- COSMACog 1802
- System Controller - Drives 2 MCP23S18 SPI I/O expanders to provide data display, hexadecimal keypad, system control switches.
- Memory Controller - Provides up to 28k of RAM using HUB memory.
A virtual bus representing a modified version of the 1802 bus resides in hub memory allowing other cogs to interact with the cpu emulator.
A COSMACog 1861 is planned to provide "pixie" graphics with a 1861/1862 version to provide color graphics to follow.
Depending on working out some timing issues an updated memory controller using external SPI RAM will provide up to 64k of RAM.
C.W.
9Nov12
It looks like SDI or SQI RAM will be needed for going above the 28k or so that will be available from HUB RAM.
I ordered some 23LC512's today for testing.
COSMACog is an emulator for the RCA COSMAC 1802.
I'll use this thread to release info and source as the project proceeds.
The COSMACog 1802 uses a single cog to emulate the 1802 with other cogs providing
system control, memory, and video support.
A minimal system takes 3 cogs:
- COSMACog 1802
- System Controller - Drives 2 MCP23S18 SPI I/O expanders to provide data display, hexadecimal keypad, system control switches.
- Memory Controller - Provides up to 28k of RAM using HUB memory.
A virtual bus representing a modified version of the 1802 bus resides in hub memory allowing other cogs to interact with the cpu emulator.
A COSMACog 1861 is planned to provide "pixie" graphics with a 1861/1862 version to provide color graphics to follow.
Depending on working out some timing issues an updated memory controller using external SPI RAM will provide up to 64k of RAM.
C.W.
9Nov12
It looks like SDI or SQI RAM will be needed for going above the 28k or so that will be available from HUB RAM.
I ordered some 23LC512's today for testing.
Comments
My goal is to have a release before Christmas, maybe a teaser before Thanksgiving.
I still have my ELF II but it usually takes some TLC every time I run it these days.
When I was a kid I had fun making it play Christmas carols; first by toggling the Q line hooked to a speaker, later using the divider chip on the Netronics Color/Sound board.
We have so much power at our fingertips these days, but somehow that magic isn't there.
C.W.
The Magic - is not what you have, . . . but - what you can imagine it could be.
Eldon
I've heard a lot of good things about Lee's membership card, I need to build one as well to add to the stable.
The PPDB would be good since it has the displays and room for the MCP23S18's.
I'm currently using a Propeller Platform USB and a couple breadboards with the LED's and keypad wire-wrapped (showing my age!) on some perfboard.
C.W.
Edit 16 Nov 12 - Changed to a Quickstart because the PPUSB stopped being recognized by SimpleIDE...
This is a very interesting project. My first home-brew computer was based on a purchased 1802 chip. These days I'm working on a Propeller COSMAC ELF II. This version will have the expansions in place, including 4K Memory Expansion, Giant Board equivalent, original graphics card, a version of the original Tom Pittman's Tiny BASIC and ELF II games. In the first version, built on a solderless breadboard, binary switches and a pushbutton are used to enter code. The expanded version has more options including the ASCII keyboard.
That brings back memories of a single board microcomputer I had.
At one time I had over 20 1802 setups, boy was that a fun chip!
Bob
The 23LC512 chips came in yesterday, and based on tracking info it looks like my Logic Sniffer (http://forums.parallax.com/showthread.php?135138-Logic-Analyzer-questions) should be here Thursday.
With a lot of help from kuroneko and tonyp12 it looks like a modified version of Ahle2's Video Generator based SPI driver will work to drive the 23LC512's using the SQI protocol.
http://forums.parallax.com/showthread.php?143679-Looking-for-methods-for-fast-SDI-or-SQI
I plan to work on the memory controller this weekend and once that is complete I can finalize the timing for the "virtual 1802 bus" and move ahead with the 1802 emulator.
It is so cool looking at that little 8 pin DIP knowing it replaces what would have been SIXTEEN 4k memory boards on my ELF II.
C.W.
Check out and join the COSMACElf Yahoo group if you are interested in 1802 retro-computing.
http://groups.yahoo.com/group/cosmacelf/
We are a pretty active group who work on and discuss a wide variety of computers and projects
dealing with the CDP1802 microprocessor and related areas of interest.
Bill,
Thanks, I'm already a member, and you're right it is a pretty active group.
I've been bogged down in "work work" projects lately and have not been able to dedicate and time to the COSMACog project.
I may end up doing this as a P2 project instead of P1 since I won't need any extra RAM or IO if I use the P2.
I'm getting a DE2-115 to emulate the P2 while we wait for the actual chips, so I may be able to get started back on this in the next few weeks.
C.W.