I've been trying to transcribe the BASIC listing checksum tool shown in the January 1988 issue of "Computing with the Amstrad PCW". In theory this ought to be straightforward: Type it in as an ASCII file, run it on itself, and check that the checksums calculated match the ones printed beside the listing. It's not so satisfactory as the PCW Plus one, because it calculates for groups of four lines at a time.
My best shot at the listing is attached, but I'm getting different checksums for lines 50-80 and 130-160. Can anyone see if I've miskeyed something, or spot some other reason why it's coming out different?
(It doesn't help that as far as I can see, the font they used for listings isn't quite fixed-pitch; most characters are the same width but I think some, like the ", are narrower, so you can't check if lines have the right number of characters by how the characters align with adjacent lines)
Mallard-80 BASIC with Jetsam Version 1.48
(c) Copyright 1984 Locomotive Software Ltd
All rights reserved
33082 free bytes
Printer (Y or N)? n
Enter file name? checksum.asc
Lines 10 to 40 23040
Lines 50 to 80 22576
Lines 90 to 120 16942
Lines 130 to 160 17265
Lines 170 to 200 19159
Lines 210 to 240 19002
Lines 250 to 280 09799
Lines 290 to 320 21770