Flags of the World by Andre Coutanche & Stuart Gascoigne
------------------ ----------------------------------
The flags
---------
The following countries are not represented -
Afghanistan, Bhutan, Belize, Bulgaria, Burma, Cape Verde Islands, Ecuador,
Egypt, El Salvador, Haiti, Lebanon, Mexico, Namibia, Papua-New Guinea,
Saudi Arabia, Sri Lanka, Uganda, Vatican City, Zambia.
Except for Namibia, it's because they're too difficult (Namibia we don't
know). The flags are correct (within the limits of the CPC's colours and
resolution) for 1988. Some of the flags are shown without optional coats
of arms, emblems etc. Note that for some countries changing the flag is a
national pastime and they quickly get out of date.
The program
-----------
The prog comes in 3 main parts -
1) FLAGS.BAS, FLAGSRSX.BIN and FLAGS.SQN, are the main loader, the graphics
rsxs and the squashed screen respectively. These are always loaded.
(FLAGSRSX. is the source code for FLAGSRSX.BIN and can be thrown away if
you're not interested).
2) FLAGS1.BAS and FLAGS2.BAS are loaded on a 64k system when the main
loader detects that there is no expansion memory available. These give you
130 of the flags.
3) FLAGS3.BAS, FLAGS4.BAS, and FLAGS5A.BAS to FLAGS5E.BAS are loaded on a
system with expansion memory available. If you haven't got an expansion
memory, but you have got a silicon disc, it will use that instead. These
progs give you all the flags.
There is an undocumented option on both versions (just for fun).
Hackers & tinkerers beware! The program alters the BASIC system variables
by a series of pokes to allow programs to be run in the expansion memory
banks. If you ESCAPE and edit the program, you'll either get a reset or
rubbish, usually after a lot of typing. The individual parts (FLAGS4,
FLAGS5A etc) should be edited as stand alone programs, saved, and then run
as a suite.
If you've only got a 64k system there is no reason why your favourite flags
from the larger version cannot be edited out and put into the smaller one.
But you will have to discard some others to make space.
The prog has been tested on a CPC464 and a CPC6128, both of them with and
without expansion memory and/or silicon disc, and it works ok. If CPC664
owners find that it won't run, this is probably due to the different
location of the BASIC system variables; I'm happy to try and fix it up, if
you tell me where they are!
The graphics RSXS
-----------------
There are only two commands-
ùCIRCLE,x,y,radius [,ink]
where x,y are the coordinates of the centre, and
ùTRIANGLE,x1,y1,x2,y2,x3,y3 [,ink]
where the x,ys are the cordinates of the apeces.
The inks are optional. If used they set the current graphics ink; if
omitted they use the current graphics ink. They have got bugs which don't
affect the flags - in particular using a radius <2 or >220 can make the
system lock up. I might fix it some day.
Stuart Gascoigne