View unanswered posts | View active topics It is currently Thu Mar 28, 2024 12:30 pm



Reply to topic  [ 23 posts ]  Go to page 1, 2  Next
 SC/MP 
Author Message

Joined: Sun Aug 04, 2013 9:02 pm
Posts: 23
I've been working on another PIC24 based emulation in my spare time for a National Semiconductor SC/MP (INS8060). Last night I fixed the last bug that was stopping it from running (a slightly modified) 'NIBL' Tiny Basic ROM.

The emulation provides more ROM (20K) and RAM (44K) area than a real SC/MP probably ever had as well as a virtual UART and virtual SPI bus (so I can add an SD card). I've designed the code to match the original instruction micro-cycle timings. I'm currently running at the equivalent of 4Mhz but I think 8Mhz is possible.

The SC/MP was an early 8-bit chip used in the Science of Cambridge MK14 and the first Elektor magazine home brew computer.

I've designed a Arduino style shield to hold the PIC plus support components and with LEDs for the SC/MPs flag output and a button for the sense B input (used to break BASIC execution). I've broken out all the SC/MP's sense, flag and shift in/out pins to shield connections so you can use them to control external hardware.

My portable Java based Dev65 assembler package now has a SC/MP variant which I'm using to write a FORTH for the SC/MP - I couldn't find the source for one online so I started from scratch.

I thought I might offer the board on KickStarter and see how many retro hackers want to try writing code for this archaic beast.


Wed Nov 12, 2014 9:55 am
Profile

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1780
Great idea!

Don't forget the Scrumpi which predated the MK14:
http://www.theregister.co.uk/Print/2013 ... rkpatrick/
Image

(Previously mentioned at http://forum.6502.org/viewtopic.php?f=12&t=2710)


Wed Nov 12, 2014 11:02 am
Profile

Joined: Sun Aug 04, 2013 9:02 pm
Posts: 23
I'm aiming for something a bit smaller like this..


Attachments:
File comment: EM-SC/MP 3D View
EM-SCMP.png
EM-SCMP.png [ 67.71 KiB | Viewed 23838 times ]
Wed Nov 12, 2014 2:42 pm
Profile

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1780
So the virtual UART is the primary I/O device?
Would it be worth considering adding one of those USB/Uart chips and a USB connecter? I think that would be much more attractive.
(If you use a microUSB and use that also to provide power that's even more attractive, as microUSB power adapters are to be found everywhere)


Wed Nov 12, 2014 3:05 pm
Profile

Joined: Sun Aug 04, 2013 9:02 pm
Posts: 23
BigEd wrote:
So the virtual UART is the primary I/O device?
Would it be worth considering adding one of those USB/Uart chips and a USB connecter? I think that would be much more attractive.
(If you use a microUSB and use that also to provide power that's even more attractive, as microUSB power adapters are to be found everywhere)


I'd like to keep the board all thru-hole parts to make it easier for beginners to solder so I've added a USB B socket (like the Arduino UNO) and a socket for a 14-pin PIC16F1454/1455 which can be programmed as a serial adapter.

I took off the 5V regulator but might try to squeeze it back on.

NIBL is working! - I found so many typos in my code debugging it - a little too much late night copy and pasting. Now I can start on my Forth ROM.


Sun Nov 16, 2014 3:26 pm
Profile

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1780
That's great - and keeping with through-hole is a good idea too. Do let us know as you launch it, or get close to launching it.


Sun Nov 16, 2014 4:12 pm
Profile

Joined: Sun Aug 04, 2013 9:02 pm
Posts: 23
Here's the latest design. I'm going to order some prototype boards from China this week.


Attachments:
EM-SCMP.png
EM-SCMP.png [ 47.47 KiB | Viewed 23803 times ]
Mon Nov 17, 2014 9:29 pm
Profile

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1780
How does this design relate to the one you mention at
http://forum.6502.org/viewtopic.php?f=8&t=1936

Would it be easy (or possible) to run a 6502 emulation on this board?


Sat Dec 06, 2014 4:42 pm
Profile

Joined: Sun Aug 04, 2013 9:02 pm
Posts: 23
BigEd wrote:
How does this design relate to the one you mention at
http://forum.6502.org/viewtopic.php?f=8&t=1936

Would it be easy (or possible) to run a 6502 emulation on this board?

Yes, you could.

I'm using the same micro-controller but added external components to interface to the F0/F1/F2 outputs, Sense A/B inputs and Shift In/Out pins that only make sense for the SC/MP processor. The UART and SPI connections could be used by another device emulator.

The SC/MP emulation doesn't use much of the flash even with the 20K reserved for ROM images. There's room for another device emulation and some more ROM images. My 65C02 emulator with 32K RAM would fit and the new approach I use for memory mapping would support bank switched ROMs like the BBC but would run a little slower.


Thu Dec 11, 2014 8:46 pm
Profile

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1780
That's good - I would expect there'd be more interest if you pitched the project as supporting multiple platforms. The Acorn Atom might be a good choice - I think it's simpler than a Beeb. (Although a Beeb is more mainstream.)

(For the record, a poll on gplus' Retro Computing community got 10 "interested" votes.)


Fri Dec 12, 2014 7:18 am
Profile

Joined: Sun Aug 04, 2013 9:02 pm
Posts: 23
Ok. So I re-jigged the board a little to so it has 2 jumpers. My thinking is that via the jumpers you can either enter a control panel allows new firmware to be loaded or select the emulation to be started or have it directly start in one of three emulation modes.

The question is which three retro devices to emulate:

- SC/MP with NIBL and a few other bits and pieces (44K RAM + 20K ROM)
- 6502 with a BBC MOS operating (32K RAM + several ROMS - BASIC,FORTH,LISP?)
- 65C02??
- 6800??
- CDP1802 with CamelForth?
- 8080?

The big problem is finding ROM images for boot firmware/applications.


Fri Dec 12, 2014 10:08 pm
Profile

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1780
I like the idea of being able to load new firmware - that leaves room for further expansion.

The people over on Stardot are looking at multi-platform second processors: a 6809 features, but maybe it's not too hard to rewrite the code for a 6800. You only need 1k or 2k of code to boot a second processor. It's possible to drive that second processor over a serial connection from a PC. (There's a version of the necessary host code in perl: http://sweh.spuddy.org/Beeb/TubeHost/)

BBC BASIC is nice because it includes the assembler. A good monitor would include a disassembler, but not sure how many include an assembler. The minimum needed is something to load code, whether srecords or zmodem or whatever.

A Forth would be nice, for sure. Do you have an 1802 emulator, or do you believe it to be straightforward? Again, that would widen the appeal quite a lot.

For the 6800, there's a SWTPC monitor apparently, and also this rewrite of the Apple 1 monitor:
http://whats.all.this.brouhaha.com/2011/07/18/success/

Edit: see also http://www.nj7p.info/Toys/Software/Moni ... n6800.html


Sat Dec 13, 2014 3:53 pm
Profile

Joined: Sun Aug 04, 2013 9:02 pm
Posts: 23
I've restructured the code and tweaked the PCB a little before shipping it off to China for manufacture at http://dirtypcbs.com/

The firmware will support four emulations with the default selectable by jumpers. There will be a SC/MP, M6800, 6502 and CDP1802. The SC/MP is fully working. I'm going to convert my 65C02 emulator into a straight 6502 (by putting all the bugs back in). The 6800 is mostly written and I'm making a start on the CDP1802.

Resetting the board while pressing the input button will at some point invoke monitor mode and/or the boot loader, but I'll code that last.


Tue Dec 16, 2014 4:25 pm
Profile

Joined: Wed Jan 09, 2013 6:54 pm
Posts: 1780
Nice choice of retro CPUs! And another potential PCB supplier to add to the list.


Thu Dec 18, 2014 11:23 am
Profile

Joined: Tue Dec 31, 2013 2:01 am
Posts: 116
Location: Sacramento, CA, United States
BitWise wrote:
... The SC/MP is fully working. I'm going to convert my 65C02 emulator into a straight 6502 (by putting all the bugs back in). The 6800 is mostly written and I'm making a start on the CDP1802.

That sounds really cool, BitWise! I doubt that you'll have many issues finishing up the 6800 simulator ... it's about as complicated as a hammer, but still kind of fun.

I think I might end up being one of your customers, if the stars align properly for me ... I have a lot on my plate, but I really want a new toy, and this looks like really good bang for the buck (he says, without knowing how much you plan to charge for it :ugeek: ).

Mike


Fri Dec 19, 2014 11:09 pm
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 23 posts ]  Go to page 1, 2  Next

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software