The Nudge facility cannot be used to complete (or even add to) the Katapilla - to cure, add line: 395 GO TO 860.
(Actually it wasn't supposed to, but thanks for the tip. TP.)
Also, you start with nine credits and still have a go left when the credit counters shows 000! To cure, change CRE in line 1710 to LET CRE=11 and also make line 110 read:
LET CRE=CRE-1: IF CRE=0 THEN PRINT AT 15,23; PAPER 8; "0": INPUT "NO CREDIT - PRESS ENTER FOR MORE"; LINE A$: LET CRE=10: GO TO 120
This leaves the display ready to go when you run out of money.
(The original does start with ten credits - but credits are taken off before you go, hence the first display is of nine credits and the program shows 000 credits on your last spin. TP).
Nudge is too infrequent (I didn't want to make it too easy. TP) - to cure this, change line 1630 to RND>.75. I also changed RND to >.6 in 1350. (Well done! TP.)
How about renumbering line 1210-1310 to 2-12, deleting 1210-1310, moving line 10 to 15, adding a line 1; GO TO 15 and changing GO SUB 1210 in lines 130, 340, 370, 400, 430, 460, 490, 1480, 1540, 1590 to GO SUB 2. This will marginally speed up the reels. (Ha! TP.)
I also changed three Bells to give a reward of £2, by altering the '100' in line 2040 to 200 and the first '£1' in line 3080 to £2. And I added a SAVE line - where's yours? (It's not necessary to waste program space with a line that the program never calls itself TP.)
Just in case you're interested, I did all these changes, then attempted to renumber using BetaBasic; however, it failed - not taking old line 110!
Mr Harris, Billericay
Oh well, nothing wrong with a little customisation I suppose. Troubleshooting Pete.
|F O R U M|
Is there something you're not telling us? Write to Forum, Your Spectrum, 14 Rathbone Place, London W1P 1DE.
that I took home issue 4 and
prepared to enter Andrew
Pennell's Dumps of Distinction
program, only to read - with
mounting horror - that his
routine "rules out the old
Epsons (MX-type and assorted
However, as the program was just what I'd been looking for, I had a crack at modifying the code for my clapped-out MX80. After altering the line feeds, changing the mode to double density bit image and using five bytes instead of three (needing some overlapping of bytes as the last byte of the first colour becomes the last byte of the next), a reasonable simulation was achieved.
Mad Milmps, Durham
listings. Perhaps this will sort
things out. |
In Listing 5, the total of the data is 7364. I've no idea where the figure of 7791 came from! The last four items of data are 'dummy' values not used by the code - hence they need not be POKEd (although they should be read if you want to end up with the total of 7364). The data lines were program generated - hence the overrun (which has no effect on the program) - at least that way they're correct! Lines 140 and 145 set up the 'vector' pointers which tell ZIP where to find the code for PLOT and DRAW. They aren't saved but, like most of Listing 5, they alter the library which is saved.
The 'calculation not allowed' error is a tricky one - it turns out that Listing 4 is at fault. For some arcane reason the listing was garbled. In the third column on page 65 you will find the explanation of line 7258, which "calls the MATHS routine twice, to process an X and Y co-ordinate".
Examination of the listing shows that YS child prodigy, Peter Shaw, re-typed the listing with only one call to MATHS, so that the Y co-ordinate is not scanned. Later ZIP finds a number when it is expecting to find a colon or end-of-line marker - the compiler assumes that you're trying to use an 'extra number' after PLOT or DRAW and retorts 'calculation not allowed'. The solution is to add an extra call to MATHS in line 7258, so that it starts ...
7258 GO SUB MATHS: GO SUB GETS: GO SUB MATHS: LET ...
This fetches the X co-ordinate, the separator (a comma) and then the Y co-ordinate. If you've got the rest right, ZIP should then work.
I'm sorry the information got so garbled ... please accept my apologies.
Concerning the ZIP Compiler Offer, I also have to apologise to readers who received their copy late. The delay was caused by a postal dispute in London, which meant that letters took up to three weeks to reach our office.
The dispute has now ended and
deliveries are back to normal. |
Simon Goodwin, Birmingham
START EQU 32350 ORG START CD005B CALL 23296 ;SETUP ROUTINE 1801 JR BEGIN END ORG START+6 ESC EQU 27 3E1B BEGIN LD A,ESC CD027F CALL OUTCH 3E41 LD A,"A" CD027F CALL OUTCH 3E03 LD A,3 CD027F CALL OUTCH ;SET UP SMALL LINE FEEDS 0E00 LD C,0 ;ZERO X COUNTER 3E1B NLINE LD A,ESC CD027F CALL OUTCH 3E4C LD A,"L" CD027F CALL OUTCH 3E70 LD A,112 CD027F CALL OUTCH 3E03 LD A,3 CD027F CALL OUTCH ;PUT IN DOUBLE DENSITY BIT IMAGE MODE ;AND SET n1 AND n2 FOR 5 * 176 BITS OF DATA 0600 LD B,0 ;ZERO Y COUNTER C5 NXY PUSH BC CDAA22 CALL #22AA ;HL=SCREEN MEMORY 47 LD B,A 04 INC B 3E01 LD A,1 0F L1 RRCA 10FD DJNZ L1 A6 AND (HL) ;Z IF INK, NZ IF PAPER 08 EX AF,AF' 7C LD A,H 0F RRCA 0F RRCA 0F RRCA E603 AND 3 F658 OR #58 67 LD H,A ;HL=ATTRIBUTE BYTE 46 LD B,(HL) ;B=ATTR 08 EX AF,AF' 78 LD A,B ;A=ATTR 2003 JR NZ,INK 0F RRCA ;IF PAPER THEN /8 0F RRCA 0F RRCA E607 INK AND 7 ;MASK OTHER BITS
21E17E LD HL,TABLE 87 ADD A,A 87 ADD A,A 5F LD E,A 1600 LD D,0 19 ADD HL,DE ;HL=DATA SPECIFIED COLOUR 0605 LD B,5 ;=NO OF BYTES PER PIXEL 7E OUTLP LD A,(HL) ;READ BYTE CD027F CALL OUTCH ;SEND IT 23 INC HL 10F9 DJNZ OUTLP ;DO 5 BYTES C1 POP BC ;RESTORE X & Y 04 INC B 78 LD A,B FEB0 CP 176 38C7 JR C,NXY ;DO ALL 176 PIXELS 3E0D LD A,13 ;END OF LINE SO DO CR CD027F CALL OUTCH 3E0A LD A,10 ;AND A LINE FEED CD027F CALL OUTCH 0C INC C 209F JR NZ,NLINE ;DO ALL 256 X PIXELS 3E1B LD A,ESC ;RESET LINE FEED CD027F CALL OUTCH 3E41 LD A,"A" CD027F CALL OUTCH 3E0C LD A,12 CD027F CALL OUTCH C9 RET ;DATA TABLE FOR COLOURS E0 TABLE DEFB %11100000 E0 DEFB %11100000 E0 DEFB %11100000 E0 DEFB %11100000 E0 DEFB %11100000 80 DEFB %10000000 E0 DEFB %11100000 20 DEFB %00100000 E0 DEFB %11100000 60 DEFB %01100000 60 DEFB %01100000 20 DEFB %00100000 00 DEFB %00000000 C0 DEFB %11000000 80 DEFB %10000000 C0 DEFB %11000000 00 DEFB %00000000 40 DEFB %01000000 A0 DEFB %10100000 40 DEFB %01000000 00 DEFB %00000000 40 DEFB %01000000 40 DEFB %01000000 00 DEFB %00000000 00 DEFB %00000000 40 DEFB %01000000 00 DEFB %00000000 00 DEFB %00000000 00 DEFB %00000000 00 DEFB %00000000 00 DEFB %00000000 00 DEFB %00000000 00 DEFB %00000000 ; OUTCH SEND BYTE TO PRINTER OUTCH EQU $ ; HILDERBAY OUTPUT C5 PUSH BC E5 PUSH HL CDFE5B CALL 23550 E1 POP HL C1 POP BC C9 RET END
both frustrating and
unacceptable - especially
when one considers how easy it
is to transfer from tape to tape
using two tape recorders. |
Any advice, procedures, software or hardware which will enable non-technical and law abiding users to transfer taped programs to Microdrives are, in my view anyway, much to be encouraged (like Tasman and Campbell). Otherwise one starts to wonder about the purpose of having a Microdrive in the first place.
Ian Ross, Renfrewshire
At least one company (Romantic Robot) are selling software which will allow users to copy commercial programs to Microdrive; it will be interesting to note whether this will cause any programmers to hit the piracy bandwagon. I suspect the reason there is so little software currently on Microdrive is the cost of the cartridges and their duplication - until Sinclair Research reduce the price of the cartridges, Microdrive owners are likely to find themselves discriminated against. I've said it before and I'll say it again ... life isn't a line of cherries. Ed.
To divide a binary number by 32 we would move the point five places to the left - so the returned eight-bit binary number from the input port would then, in fact, consist of the three high bits (including the 'naughty' bit 6) as the integer and the five low values as the fraction. We can then subtract the integer. Multiply by 32 and we've a whole number again which, as it doesn't contain bit 6, doesn't flicker. The unpressed value is, of course, 31 (16+8+4+2+1) but we can then simply add 224 to give the original unpressed value of 255.
The following short program will, I think, prove the theory:
5 REM PRESS KEYS QWERT
10 DEF FN f(x)=(x/32-INT(x/32))*32
20 LET a=FN (IN 64510)+224
30 PRINT AT 0,0; a
40 G0 T0 20
I hope the above ramblings may be of some interest and use to someone. May I take this chance to thank you for publishing the best magazine on the market.
Derek Hirst, Barnsley
You certainly may ... and we thank you for your suggestions. Ed.
Wait on the bow till 11:45pm (Smith time), which may seem an awful long time to you swashbuckling Spectrummers. At that moment, a raft will get tossed up on a large wave and you must then jump on. It takes you to Crusoe Corner (a desert island to us landlubbers). Then you shin up a palm tree to arrive at Tree Tops - The Sequel, from which you catch the bird that travels up towards In The Clouds. From there you can control yourself all over the house (funny things happen when you try to enter the water or the Master Bedroom) and from that point, it should be possible to find The Gaping Pit (though I've not tried it myself). It also clobbers the 'Attic Attack' and makes it possible to go through baddies (fire puts you down where you are, so be careful) whereupon the bird disintegrates.
Robin Daines, Chester
Hey, he's right ... but if you wait In The Clouds long enough you actually get attacked by a ball of fire coming in from the left that first frazzles Willy, then dumps him inside an ice volcano under Hades, and then - and then - and then - OK, clear off schmuck! Ed
NJ Ball, Sidcup
To get Dumps of Distinction working via Interface 1, add the following lines to the listing.
1000 DATA 207, 49, 24, 16, -1
1300 DATA 197, 229, 207, 30, 255, 193, 201, -1
For some reason my particular printer kept crashing in the middle of the dump. So, if you have a similar problem, I can only suggest you try a lower Baud rate. Andy Pennell.
|If you're the proud owner of a "clapped-out MX80", try the converted code from Mad Milmps of Durham to get Andy Pennell's Dumps of Distinction working.|
||I too have spent a fortune on software. I too have no intention of making money by copying and selling pirated software; and I too wish to get the best advantage of my own paid-for possessions. I enjoy the facility of being able to run programs from my Microdrive, with all that this offers in the way of speed and compactness, and therefore I feel that the obstacles placed in my way are|