![]() |
![]() |
![]() |
|
Vintage Computers Any vintage computer systems, calculators, video games etc., but with an emphasis on 1980s and earlier equipment. |
![]() |
|
Thread Tools |
![]() |
#1 |
Triode
Join Date: Dec 2011
Location: Preston, Lancashire, UK.
Posts: 11
|
![]()
Hi Folks!
There seems to be a lot of interest here for National Semiconductor's SC/MP processor and NIBL language. I recently picked up a NS IMP-16 computer that came with a preliminary version of NIBL, dated 11-5-76 (Guessing US date format) It appears to be in NS' RLM format and was probably generated by the SC/MP cross assembler on the IMP-16. Sadly, I don't have the source or the cross assembler but I figured this might be of interest to somebody here. Cheers, Dave |
![]() |
![]() |
![]() |
#2 |
Heptode
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 911
|
![]()
Hi Moonferret, that is a puzzle, its 8k where NIBL is 4k, and unfortunately the image seems to be corrupted, maybe the dreaded 'bit-rot' or maybe it isnt what it says on the tin, it starts out with 160 hex HALTs, there are a lot of blank 00 areas though I can see a few keywords, some of which arent NIBL as we know it... 'PLIST', 'CLEAR', etc. Not sure what it is, will have a better look later. What type of chip is it, a 2764??
Ta for posting though, its all interesting stuff! Last edited by Phil__G; 11th Oct 2023 at 12:39 pm. |
![]() |
![]() |
![]() |
#3 |
Triode
Join Date: Dec 2011
Location: Preston, Lancashire, UK.
Posts: 11
|
![]()
It's a direct read from the paper tape and it does seem correct. However, it is in RLM format so it's going to need a little work to decode to a plain binary file. The additional keywords are interesting though.
Cheers, Dave |
![]() |
![]() |
![]() |
#4 |
Triode
Join Date: Feb 2014
Location: Redditch, Worcestershire
Posts: 27
|
![]()
Odd format (lots of leading zeros and fields of code) but I have been able to extract something which looks very similar to NIBL on my Elektor SC/MP. The .dis text file is from my own disassembler, .bin file is raw data (page 0).
__________________
David |
![]() |
![]() |
![]() |
#5 |
Pentode
Join Date: Jan 2021
Location: Ashford, Kent, UK
Posts: 249
|
![]()
Is there a definition of RLM format? I've read it means Relocatable Load Module but can't find any detail of how it's constructed (or is it more about how it's represented on paper tape)?
|
![]() |
![]() |
![]() |
#6 |
Triode
Join Date: Feb 2014
Location: Redditch, Worcestershire
Posts: 27
|
![]()
FWIW the format of the file appears to be repeated sections of:
<NUL> <STX> <length> <checksum> <data> <CR> <LF> Strip all leading NUL's (0x00) until STX (0x02) encountered <length> byte bits 5-0 is size of <data> section (b7/b6 include extra info) <checksum> byte is sum of bytes in <data> modulo 256 The data section starts with two bytes: high/low for file (address?) position followed by code (usually 28 bytes per full line) The length byte appears to set bit 6 for normal lines, bit 7 and 6 set for termination/EOF.
__________________
David |
![]() |
![]() |
![]() |
#7 |
Triode
Join Date: Dec 2011
Location: Preston, Lancashire, UK.
Posts: 11
|
![]()
The RLM format is described in chapter 6.4 of the IMP-16 programming manual here...
http://www.bitsavers.org/components/...pgmg_Nov73.pdf Looks like it was originally intended for data stored on punched cards and later adapted for paper tape. Cheers, Dave |
![]() |
![]() |
![]() |
#8 | |
Heptode
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 911
|
![]() Quote:
![]() At 0170 theres a 'start of text' character (02) followed by two 16-bit (record length?) then some SC/MP code - 08 (usual throw-away opcode at zero) C4 10 36 etc... which is indeed NIBL code. Its hard to read manually with all the CR/LF and nulls but it does look like NIBL-P. Taking the first record, the length (if it is that) 5E D7 00 00 is a peculiar number, whether you take it as big or little endian - you'd expact something magic like 32, 64, 4096 etc. Peculiar and intriguing... ![]() Last edited by Phil__G; 12th Oct 2023 at 8:59 pm. |
|
![]() |
![]() |
![]() |
#9 |
Tetrode
Join Date: May 2021
Location: Titz, Germany.
Posts: 71
|
![]()
Moonferret: I could recover the source from changing the earliest version I had. Would you mind if I include the image from the papertape in my NIBL collection and if it is ok, give credit to who?
It looks like the variable layout was quite different in this version, there are some bugs and the random number generator worked differently. |
![]() |
![]() |
![]() |
#10 |
Heptode
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 911
|
![]()
Have you decoded the RLM Michael?
![]() |
![]() |
![]() |
![]() |
#11 |
Tetrode
Join Date: May 2021
Location: Titz, Germany.
Posts: 71
|
![]()
No, but Silvester did so a few posts ago. I used that binary.
|
![]() |
![]() |
![]() |
#12 |
Tetrode
Join Date: May 2021
Location: Titz, Germany.
Posts: 71
|
![]()
I updated nibl.tar.gz at
http://www.moria.de/tech/scmp/software/ to include the restored source for the pre-release. If you are curious what exactly has been changed, now a diff of the source can answer that. |
![]() |
![]() |