National Semiconductor's SC/MP (pronounced scamp) for Simple Cost-effective Micro Processor, is an early 8-bit microprocessor which became available in April 1976. It was designed to allow systems to be implemented with the minimum number of additional support chips. SC/MP included bus-access control signals that allowed several processors to share a common memory bus in a daisy-chained multiprocessor arrangement, or to support direct memory access hardware.
The SC/MP was followed by the SC/MP II, also known as the INS8060. National Semiconductor later introduced the 70-Series (also known as the INS8070 Series). Some later sources refer to this family as “SC/MP III” or “SC/MP-3”, terminology not used in contemporary National Semiconductor documentation., used the SC/MP in its first microprocessor based elevator, the "MIPROM Hydro elevator-controller system" released in 1975. Montgomery described MIPROM as a "microprocessor elevator logic control" system, and a later Otis PC-board catalogue identifies board MTGMP-15783 as a "CPU MIPROM SC/MP II Board". The corresponding P-15783 CPU card is illustrated in the MIPROM I troubleshooting guide, and a TK Elevator spare-parts listing identifies P-15783 as a refurbished Montgomery MIPROM CPU board; the board photograph in that listing shows the processor package marked "INS8060N" and "ISP-8A/600N". The MIPROM I troubleshooting guide also lists CPU card P-15783 as a replacement for P-16782, but the replaced P-16782 is not shown clearly enough to identify the processor used on P-16782.
The SC/MP was used as the basis of a single board microcontroller produced by Science of Cambridge (later Sinclair Research Ltd) called the MK14. This was based on National's own Introkit design, and National offered Sinclair a deal on completed sets which could not be matched by building their own. This allowed the MK14 to sell for the extremely low cost of £39.95.
Doug Neubauer, best known as the author of Star Raiders, had moved to Atari after working at National on a product identified only as a "home computer product". This had progressed to the stage of a wire wrapped prototype before the company killed it.
Example code
The following assembler source code is for a subroutine CPYMEM that copies bytes from one location to another. This routine can be used to copy between pages but cannot cross a page. It can be executed from ROM or RAM. If executing from RAM, loop counting could be accelerated with a <code>DLD</code> instruction using a PC-relative counter. This routine uses an unusual @1(P1) addressing mode that is used to auto-index through the memory. Unlike other processors with auto-index such as the 68000, the SC/MP auto-index stride can be larger than the datum size.
{|
|-valign="top"
<!-- BEWARE, blank lines below are meaningful, do NOT delete them! Assembled by brain so object code errors possible. -->
|<syntaxhighlight lang="text">
1000
1000 03
1001 01
1002 C5 01
1004 CE 01
1006 C4 FE
1008 70
1009 9C F6
100B 3F
</syntaxhighlight>
|<syntaxhighlight lang="tasm">
; Copy memory words addressed by P1 to location addressed
; by P2 for a length of up to 255 bytes. Length is passed
; in AC (accumulator). Return address in P3.
= X'1000
CPYMEM: SCL ; Set carry for upcoming ADD
CPYLP: XAE ; Save count in E
LD @1(P1) ; Get byte to copy, inc P1
ST @1(P2) ; Save save it, inc P2
LDI -2 ; -2 to AC to decrement
ADE ; E (set carry made it -1)
JNZ CPYLP ;Continue for all bytes
XPPC P3 ;Return to caller
</syntaxhighlight>
|}
Notes
References
Citations
Bibliography
External links
- More info and emulators
- National Semiconductor datasheet
- Information about the SC/MP including an emulator
- MK14 original manual – including ISA description
- A SC/MP II Single Board MCU with NIBL BASIC in ROM
- NSC 807X datasheet
- SC/MP Development System at the Centre for Computing History
- Various INS807x Series PDF files
- Hand-wired INS8073 single-board computer with info on assembly of source code
