UK Vintage Radio Repair and Restoration Powered By Google Custom Search Vintage Radio and TV Service Data

Go Back   UK Vintage Radio Repair and Restoration Discussion Forum > Specific Vintage Equipment > Vintage Computers


Vintage Computers Any vintage computer systems, calculators, video games etc., but with an emphasis on 1980s and earlier equipment.

Closed Thread
Thread Tools
Old 18th Oct 2019, 7:28 pm   #1
Join Date: May 2019
Location: Reading, Berkshire, UK.
Posts: 30
Default NASCOM hardware and software projects

I'm delighted to see a couple more NASCOM users appear. For NASCOM users who are not members of the Yahoo group, I'd like to share details of my recent (and not so recent) NASCOM projects:
  • wav2bin - a PERL program that will extract binary data from a .wav file. Typically, this wold be used to generate a .CAS file from an ancient tape recording.
  • nascon - a PERL program for converting between NASCOM formats: cas/nas/hex/bin
  • polydos_vfs - a PERL program for manipulating PolyDos disk images
  • NASCOM 1 RAM expansion - a 3-chip (RAM + 2 TTL) 60Kbyte expansion that attaches to the NASCOM 1 edge connector. Tested.
  • NASCOM 2 RAM expansion - a 1-chip 60Kbyte expansion that piggy-backs on a NASCOM2 bytewide socket. Untested.
  • SDcard storage for the NASCOM. 2 versions. One version connects to the UART/serial port and uses the NAS-SYS tape commands. Requires no HW mods or ROMs. The other version connects to the PIO and, with a boot ROM, will run PolyDos. The hardware uses an Arduino, and SDcard adaptor and a few wires. You can build one on a proto board or ask nicely for one of my spare PCBs.
  • Documentation, ROM and disk images for PolyDos and permission-to-share statement from the original author

The word PERL got mentioned a lot. If you are on Linux or Mac you have it. If you're on Windows I recommend Strawberry Perl.

All this stuff is here: It is documented as well as I know how, with words, code and photos. I will be "happy" to receive bug reports.

If anyone has any other PolyDos material (other versions, documentation on their word processor) I'd be delighted to see it.

NealCrook is offline  
Old 23rd Oct 2019, 11:42 am   #2
Join Date: Apr 2019
Location: Skipton, North Yorkshire, UK.
Posts: 248
Default Re: NASCOM hardware and software projects

Thanks Neal.
john_newcombe is offline  
Old 16th Nov 2019, 4:30 pm   #3
Join Date: May 2019
Location: Reading, Berkshire, UK.
Posts: 30
Default Re: NASCOM hardware and software projects

BTW, the NASCOM Yahoo group has now migrated to

NealCrook is offline  
Old 17th Nov 2019, 6:03 am   #4
mole42uk's Avatar
Join Date: Aug 2010
Location: Bristol, UK
Posts: 2,046
Default Re: NASCOM hardware and software projects

Excellent, Neal. I have a couple of NACOM 2 boards and several Gemini 80-BUS I/O cards, somewhere. I also have some Pertec stuff and lots of documentation.

recursive loop: see recursive loop
mole42uk is offline  
Old 17th Nov 2019, 8:35 pm   #5
Join Date: Feb 2016
Location: Guisborough, North Yorkshire, UK.
Posts: 57
Default Re: NASCOM hardware and software projects


Interested in your wav2bin prog.

How it that working?

I had need a little while ago for something to do that for my Epson HX-20, and managed to find a package called hxtape, this written in php. Modules of this worked both ways, wav2bin and then txt, and back again txt back to wav.

I had some discussion with the original writer in Italy, and got it all working for me (under windows XP) and it seems to all work fine, although it's somewhat of a fiddle on swapping but rates and resolution for the wav files, and using Audacity in the middle.

Parts of the process I'm using are specific to the format of the HX cassette saved files. Even so, I'd be interested to hear more.

GeoffB17 is offline  
Old 18th Nov 2019, 10:42 pm   #6
Join Date: May 2019
Location: Reading, Berkshire, UK.
Posts: 30
Default Re: NASCOM hardware and software projects

Hi Geoff,
I found various programs on the web, from which I learned enough to write my own. The code is basically in two layers. The bottom layer converts the audio stream into a byte stream. The upper layer decodes the byte stream -- in my case, it decodes the NASCOM tape format documented in the NAS-SYS documentation and referred to as "cas format".

The bottom layer converts the audio stream into bits then frames them into bytes.

The audio stream represents 1 and 0 as different frequencies. Since each bit occupies the same time, there are (for example) 1 cycle for a 0 and 2 cycles (at 2x the frequency) for a 1.

I used audacity to capture audio from old tapes, and exported it as .wav format. The wav format has a particular sample rate so counting samples is like measuring time.

Finding the frequency involves looking for zero-crossings -- ie, for the samples to change sign. By counting samples between zero crossings you find the frequency of each half-cycle. Depending on the frequency these half-cycles should be in groups of 2 or 4.

The data is an asynchronous byte stream so there should be a start bit, 8 data bits and one or more stop bits. There may also be idle time between bytes, which extends the stop time. Therefore, the code looks for a start bit, then gobbles and emits a byte, and then discards stop bits.

The cas format has a sequence of 0x00 or 0xff bytes at various points, which makes it easy to lock on to the format. After half an hour or so of staring at the wavforms in audacity, you can start decoding bytes "by eye"

The code's all in PERL with lots of comments so it should be understandable and adaptable

NealCrook is offline  
Closed Thread

Thread Tools

All times are GMT. The time now is 6:05 am.

All information and advice on this forum is subject to the WARNING AND DISCLAIMER located at
Failure to heed this warning may result in death or serious injury to yourself and/or others.

Powered by vBulletin®
Copyright ©2000 - 2021, vBulletin Solutions, Inc.
Copyright ©2002 - 2021, Paul Stenning.