INMC News

  

April/May 1980 · Issue 7

Page 26 of 39

SAME instruction, if I may express the concept in such an opaque manner. Serious contemplation of the amazingly different functions represented by the one assemler mnemonic LD almost gave one cause to doubt one’s own sanity:

LD A,B
LD E,D
LD (HL),A and even
LD A,(HL)

were sort of comprehensible, but do we have,

LD HL,BC

and if not, why not?

The ability to manipulate literal data provided another startling contrast with most older machines. Being able to go

LD A,12

makes for a machine with a very friendly feel, and makes the dreaded NOVA for which, even at assembler level, one would have to write something like

     LDA 0,M12
     .
     .
     .
M12: 12

look really pretty silly by comparison.

Of the other points that made a strong initial impression, the only remaining one really worthy of mention seems to be the stack: those who have written code to organise stacks for themselves must surely be appreciative, as we were, of this great facility being provided in the hardware, though I do admit that this is hardly exceptional in modern architecture.

So much for the machine. It has been asserted that “All machine codes are the same when you’ve worked out what the registers do”, and with this thought (and a bottle of port purchased from one of the more respectable Cambridge Colleges) to sustain us, we set about our first night of Z80 hacking in tolerably high spirits.

It is amazing what optimism and alcohol can achieve between them. By the time that we adjourned at about 3.00 a.m., there were clearly two pieces of code which were approaching one another with every appearance of being on the brink of joining together and making something approaching a program.

Panic mounted during the succeeding days as the deadline approached nearer. Lunchtimes and precious weekend hours were all sacrificed to the cause, but by about day 5 one intrepid pioneer had made a controlled landing, to general rejoicing among the onlookers.

All conceivable arms were twisted to provide manpower for the project ("Finals? You don’t need to revise for finals"). All praise is due to those who originally landed us in the frying pan for preventing our further descent into the fire. The program, however, got written.

Whether or not it is a great piece of software, and whether or not it can win a competition (It did! –Ed.), the conclusion to this narrative,

Page 26 of 39