Scor­pio News

  

July–September 1987 – Volume 1. Issue 3.

Page 35 of 67

***************************

I should like to thank Peter Bell and Mike Waters for their help. In the first issue of Scorpio News, I referred to a bug in BDOSz. Apparently I had been using an old version. The problem has now been resolved.

Soft Warm Boot on a Nascom

by R. Mohamed

No, its nothing to do with footwear. The title refers to a software controlled reset sequence or a warm boot (in CP/M) on my Nascom 2.

The idea was developed from an article by David Parkinson (INMC-80 News issue 4) describing the use of the GM803 EPROM board as a ROM-disk (i.e. copying software from ROM to RAM). I developed software (E.O.S. – EPROM Operating System of course) to copy any programs held in ROM into memory at their usual address and execute them or just load the software into RAM at any address.

With my Nascom 2 power-on-jump switch set to A000h and EOS present here on a reset, the system worked well. But if I was using disks, say under CP/M, then pressing reset would load Nas-Sys 3 and display the EOS menu. Not very helpful.

I had the choice of altering the power-on-jump , when working with disks, via hardware or software. Some later articles advocated the use of simple hardware (diodes and switches) to alter the jump-on-reset address. I decided against this approach for two reasons, it is technically inelegant and more importantly, my Nascom 2 is encased in a large steel box. This made is practically impossible to get at the switches, even to the extent of adding a remote switch.

The software approach has been successful and over the years has been enhanced to its current level. The software switch allows for 3 options, warm boot from ROM (standard system), warm boot from disk (non-standard system) or a reset to Nas-Sys and the EOS menu.

Referring to the listing, the software recognises the remains of CP/M code at page 0 by means of the two jump instructions at 0000h and 0005h. It is not particularly rigorous, but I have not had any problems. If both of these jumps are not present then it is assumed that Nas-Sys was running so execution jumps to the rest of the EOS code (‘reset’).

Page 35 of 67