Your Spectrum
Issue 10, December 1984 - Hacking Away & QL Affairs
Home Contents KwikPik

HACKING AWAY

Hacker cartoon

Andrew Pennell peruses the POKEs. Write to him at Hacking Away, Your Spectrum, 14 Rathbone Place, London W1P 1DE.

First up, thanks for the terrific response to my appeal for information - the result has been quite amazing. As usual, the letters divide into two groups - the 'haves', who wish to divulge information, and the 'have nots' who want it.
As promised last month, here's a bit of info about Chuckie Egg which (by the way) is probably the best game A'n'F has ever produced. It's quite old now and doesn't work with the Kempston joystick. Other joysticks (for example, Interface 2) are OK as it uses definable keys; it can, however, be suitably modified. But before that, let's reveal the most important POKE ... for infinite lives. When I originally hacked Chuckie Egg (actually before it was released) I didn't even look for infinite lives - which goes to show how long ago it must have been! Luckily I kept my notes and recently had another go at it, with the help of a letter from Graham Hutton.
The first thing to do is to load the bytes, which is not very straightforward because of the protection method it uses. I don't want to step on anyone's
toes, so I'm not going to supply a special loader; I'll use instead a modified version of the loader in the game. To begin with, enter the multiple line (do a NEW first if you have Interface 1 attached):

MERGE "": POKE 24501,195: GO TO 1

Then play the tape. It'll load as normal, but will return to Basic when finished. At this stage, if any error occurs, the machine will fall over - so be careful what you type. For infinite lives enter:

POKE 42837,0: RANDOMIZE USR 42000

And the game should start. It's not the most efficient way of doing the job, but it does work. Instead of removing a DEC(HL) or DEC(IX+n), it changes a jump instruction, and this has the effect of printing the 'Game Over' message a couple of times during the game ... but don't let that put you off.
Now for the joystick mod. Having reset the Speccy, enter the listing given and save it on tape with LINE 1000 (don't save it to Microdrive or you'll get into all sorts of problems). Then load Chuckie Egg in the way described above and do the POKE on its own if you want it. Next, load the joystick mod and, hey presto - a joystick Chuckie Egg! As before, if any error occurs during the loading of the second listing, the machine will fall over and you'll have to start from scratch.
I also got a letter from someone who wishes to be known as 'ITR', who said that they knew the infinite lives
POKE for Chuckie Egg but wouldn't condescend to tell me what it was - we don't need your type round here! Actually, ITR did come up with some interesting stuff on the way the screens are stored. Apparently they're stored from 46000 to 51372, each taking 672 bytes. The letter went on to supply a neat little program that fills in all the holes at the bottom of the screens:

500 FOR f=46000 TO 51372 STEP 672
51O FOR g=0 TO 31
520 POKE f+g,5
53O NEXT g
540 NEXT f
560 RANDOMIZE USR 42000

Enter this in the same way as the joystick patch, by saving it to tape. In fact, I think these POKEs are better than infinite lives; the game still remains difficult, though easier than the standard version.
I've also received several requests about putting Sabre Wulf on Microdrive - apparently even Ultimate has said it's impossible. Shame on you Ultimate! Considering it costs a tenner, you should be more helpful than that. I never use cassettes except for loading originals before converting them, and switching SW is pretty simple - details on that next month.
Until then, keep hacking and sending your letters in (though please no more JSW POKEs - I've enough letters on that subject to wallpaper my bedroom!).
1000 DATA 39277, 103, 39321, 71, 40311, 71, 40893, 71, 39341, 79, 40254, 79, 40850, 79, 40655, 95, 40713, 40713, 87
1010 RESTORE 1000
1020 FOR i=1 TO 9: READ a,b
1030 POKE a,219: POKE a+1,223: POKE a+2,0: POKE a+3,0: POKE a+4,203: POKE a+5,b
1040 NEXT i
1100 RANDOMIZE USR 42000

The Basic listing providing a joystick mode for Chuckie Egg.

... including the mandatory mistake, of course. The DATA statement has 19 values but the FOR...NEXT only reads 18, probably because the 40713 near the end has been entered twice.

 
CONCURRENT
QL AFFAIRS
 
John Torofex and Nigel Cross investigate the QL news scene.

Well, Sinclair Research has finally announced that the QL mail order operation is being wound down, and QLs are making their presence felt in the high street stores.
However, there are all sorts of rumours around which suggest there's still the odd reliability problem with many of the machines. The manager of the local branch of Dixons told me that out of 1000 machines delivered to their warehouse, only 190 worked properly. Further rumbles from distributors Spectrum, seem to indicate similar troubles - with one hapless dealer spending a whole morning with six QLs and six sets of Psion software, trying to find a combination that enabled all the Psion wares to be loaded.

.
DIY RAM?
Has anyone out there seen the ad for the 256K RAM expansion module from Simplex Data Ltd? Is it my failing sight, or does close inspection of said photographed device reveal the alleged unit to be constructed from four separate components - three pieces of chopped-up QL PCB and a DIN4 1612 connector - all held together with black sticky tape!
What beats me is how the company can sell the board at £198, when each QL that's chopped up will have cost over £300 at trade prices!
.
RESPONSE FRAME
In a recent communiqué with Dr David Potter of Psion, he claims that an analysis of how the company are dealing with QL enquiries over the period June 6th to October 10th gave the following results: 65 per cent were answered and posted on the same day as receipt; 15 per cent were dealt with within 48 hours of receipt; and eight per cent were sorted within 24 hours.
My more astute readers will note that the above leaves 12 per cent out in the cold. It seems these are the 'tricky' questions, involving printers and the like, that need much more research. Nice one, Psion!

.
EXTRA, EXTRA!
Fans of QLUB (Wake up out there! Ed.) who've been on the edge of their seats waiting for the second thrilling instalment of QLUB News will not have to hold their breath much longer. However, according to my calculations, as the first QLs appeared in April, surely we should have seen at least four issues by now? Maybe the editor's too busy sifting through the wealth of programming contributions to put together the next issue.

.
SIR CLIVE WHO?
A rather interesting journal fell on to my desk this month, the Quarterly Newsletter of the Society for the Study of Artificial Intelligence ... and it details the exploits of one, Sir Clive Hardware. He reminds me of someone.

.
A SERIAL SOAP OPERA
It appears that the QL has all sorts of problems in its serial
ports. As the serial I/O ports require to be set at the same baud rates, it's been assumed by many that the machine has these two sockets 'ganged' together in some way through their internal wiring. Take the recent experience of a QL user.
Picture a QL (JM version) with Sinclair-provided serial I/O cables, an Epson RX8O printer performing perfectly at 9600 baud using its XON/XOFF protocol and an Apple II using a proprietary serial card at 1200 baud (with the RTS and DTS signals shorted together to fulfill the requirements of the Apple transmission). However, connect the printer to the QL's ser1 port (and switch it on) and the Apple to the ser2, and type the following on the QL:

BAUD 1200
COPY SER2 TO SCR

All you'd expect is the QL to display any transmission from the Apple. However, without transmitting any data from the Apple, characters appeared on the screen!
If you remove the Apple there's no difference, even though there's nothing attached to ser2 where the Apple was once attached and from where the QL is supposed to be getting its information. If you disconnect the printer at this point, no more characters appear on the screen. If you then reconnect the Apple to ser2, you'll get perfect results.
The moral of this sad story is that QL users won't be able to 'mix and match' disparate pieces of equipment through the serial ports, as spurious characters are most likely to interfere with their work! Also, it seems as though the QL serial ports are so wired that it is impossible to continue working in a 'reasonable fashion' (according to the QL's documentation!) without disconnecting other pieces of equipment. Which, when you think about it, is not a very satisfactory situation!
Nigel Cross
Home Contents KwikPik