PICL National Industrial Basic Language computer by Karen Orton

I’ve just done a small PCB for Karen’s 2007 PICL design, which is an SC/MP emulation in a PIC, running the genuine National NIBL interpreter code from 1976. Karens SC/MP emulation is cycle-perfect and enables a two-chip genuine NIBL machine to be built very cheaply and easily.
The PCB is under 3" square and has all the Flag and Sense lines brought out to LEDs, buttons and a header, and talks via the usual USB-to-serial CH340 module rather than Karens original MAX232. The chips are a 6264 static RAM and a PIC16F877 (I dont think an ‘877A’ will work).

For anyone fancying a look at NIBL or a trip down memory lane, this computer is really simple to make. Its nice to make one of Karens many projects as a tribute to all she achieved.

Here’s a video:


The channel also has a video of the strip-board version, another running a Geoff Graham terminal chip and one using a re-coded Xbox chatpad keyboard.

Ultimately I’ll post the gerbers but first I need to check some changes I made for the next batch (If there is a next batch! ). The change is minor, just repositioning the serial board so its flush against the edge of the PCB. Its electrically identical but I’d like to test one first.

If anyone would like a board, please email me and I’ll send a PCB at cost, strictly non-profit.

Here’s Karens original PICL page from 2007:

Phil email: рhі[email protected]аlk21.соm
Note that to avoid spam, the address above is unsearchable text & cant be copy-&-pasted into the ‘to’ field, you need to manually retype it.


A splendid project, thanks for sharing and for the links.

I see there’s a collection of signposts to threads about her other published (retro) micro projects here:
The Computer Projects of Karen Orton - UK Vintage Radio Repair and Restoration Forums

Yes Tim has posted a handy reference, its not absolutely complete but most of Karens projects are listed. Frustratingly, however, its almost impossible to post anything on that particular forum without being moderated - the mods will even remove an off-topic sentence from within a post, often ruining the flow of conversation. This is why many former members are posting elsewhere.
Karen asked that her projects be preserved and I noticed that her techlib.com site has a few broken links and missing photos. I took the liberty of taking a mirror, replacing missing pictures and repairing links. This mirror isnt published, but its safe.


I think it’s all there on archive.org, though

I’ve a soft spot for Karens two-chip marvel and I’ve been having a lot of fun with it lately. I have PAGE2.SYS running on the PICL, obviously some commands such as SAV & LOD (save/load to cassette) PRN (print) etc wont work as the hardware isnt there, but the commands DIR, DMP, CHM, ASM, NIB etc all seem to work perfectly. However whilst it does work, a serious PAGE2.SYS machine really needs more memory, PAGE2.SYS occupies the whole of page 2, and the ASM function nabs page 1 for a symbol table, leaving nowhere for ASM source or NIBL programs
The PICL isnt easily expanded as the port pins that would be A13 onwards (to take it above 8kb) are already used for /CE, /RD & /WR.

Consequently I thought I might have a crack at a smaller, PICL-specific resident machine-code monitor, something more like the old NS Kitbug would be ideal. One k should be enough for quite a capable monitor, and located right at the top of NV memory (say at #2C00) it would leave 3k free in page 2 and 4k in page1 - very little impact for the gain. Available any time by typing LINK(#2C00). You’d have to be careful with the length of page2 programs as NIBL has no concept of ‘reserved memory’ but 7k goes a long way!

Key to all this is replacing the 8k static ram with a pin-compatible 48Z08 NVRAM. For my second board I found the 48Z08 NVRAM is now out of stock at RS, so I’ve since been using the Maxim DS1225AD which is pretty much identical.
These last two weeks an accident-enforced lay up gave me the opportunity to create a smaller, simpler PICL-specific machine-code monitor to complement NIBL. It takes advantage of the NVRAM swap so (barring a catastrophe!) is permanently in memory ready to go.

This is after all a SCAMP and in its day, 8k of RAM, 4k ROM BASIC and a resident machine-code monitor is quite a respectable spec for a late 70’s computer based on just two chips!

and a bit of a demo here, though a few more commands have been added since: https://www.youtube.com/watch?v=3DpUGntVPQ8

I called the monitor KitBugPlus and it has the usual Display, Modify, Go, Type, List, Regs, & ? (help) commands, and an ‘N’ to return to NIBL.

I’ve done some documentation and a loader, all on http://philg.uk


1 Like

I do like to see a machine code monitor!

Interesting to see you use LINK there as a means of calling machine code - reminiscent of Acorn’s Atom, I think. Is there a connection or is that a coincidence?

Hi Ed,
The PICL uses the actual National Semiconductors NIBL interpreter SC/MP code from 1976 so it pre-dates Acorn by a long, long time! NIBL was described fully in Dr Dobbs Journal back in Nov/Dec 1976, I think they chose the keywork ‘link’ as they envisaged it being used to add extensions to the language.

I’ve since added an Intel hex loader to the PICL firmware, this is independent of NIBL or the monitor as its pic code in the 16F877. Consequently it can be used to load anything that will fit, including of course KitBugPlus or any other sc/mp machine-code programs or data.
Hex loading is down the console port so its just a case of ‘Send File’ from Teraterm.

The more I tinker with the PICL the more I like it, its so versatile ! :slight_smile:
All this is on http://philg.uk