8-Bit Software Online Conversion
Crosswords - Listing
10REM program X-WORD
20REM author Roger Sando
30REM address 30 FRENCH ST. NETHERBY
5062 PH.2720710
40REM page =&1100
50REM machine BBC 32K DFS or TFS
60REM do NOT renumber!
65IF PAGE>&1100 THEN PAGE=&1100:CHAIN
"X-WORD"
70MODE1:VDU23;8202;0;0;0;
80*FX4,1
90*KEY0 *FX4,0 |M MODE0 |M |N LIST |M
100VDU19,0,1;0;19,2,0;0;19,1,1;0;
110VDU23,226,192,240,252,255,252,240,1
92,0
120VDU23,227,56,124,254,254,254,124,56
,0
130VDU23,228,16,56,84,16,16,16,16,0
140VDU23,229,16,16,16,16,84,56,16,0
150PROCscreen
160PROCgame
170COLOUR2
180VDU19,0,1;0;:GCOL1,2:PROCsquare:VDU
19,1,7;0;
190R%=1:C=0
200RESTORE(B%+C*10):READL:IF L=-1THEN2
50
210D$="ACROSS":IF F%=0THEN D$="DOWN "
220PRINTTAB(3,27)STRING$(39," ");TAB(8
,25)D$;TAB(3,27)C$
230READF%,C$,A$:M%=L MODSQ:N%=(SQ-1)-(
L DIV SQ):PROCguess
240C=C+1:GOTO200
250COLOUR128:PRINTTAB(3,27)STRING$(40,
" ")
260REPEAT
270COLOUR2:PRINTTAB(3,27)"HIT SPACE BA
R TO PLAY AGAIN"
280TIME=0:REPEATUNTILTIME>25
290COLOUR3:PRINTTAB(3,27)"HIT SPACE BA
R TO PLAY AGAIN"
300TIME=0:REPEATUNTILTIME>25
310UNTIL INKEY(-99)
320CLS:GOTO80
330END
340DEFPROCscreen
350GCOL0,2:MOVE32,1000:MOVE32,1000-80:
PLOT85,1248,1000:PLOT85,1248,1000-80
360GCOL0,3:MOVE32,1000:DRAW32,1000-84:
DRAW1248,1000-84:DRAW1248,1000:DRAW32,10
00
370COLOUR130:COLOUR3:PROCprint("COMPUT
ER CROSSWORD by Roger Sando",2,1)
380COLOUR2:COLOUR128:PRINTTAB(3,7)"CHO
OSE A CROSS"
390PRINTTAB(14,6)"W";TAB(14,8)"R"
400PRINTTAB(3,9)"<1> SMALL D"
410PRINTTAB(3,10)"<2> BIG";TAB(3,11)"<
3> HARD"
420IF INKEY(-49)THEN B%=1430:VDU19,0,2
;0;:GOTO460
430IF INKEY(-50)THEN B%=1630:VDU19,0,4
;0;:GOTO460
440IF INKEY(-18)THEN B%=2150:VDU19,0,3
;0;:GOTO460
450GOTO420
460RESTORE B%:READSQ:B%=B%+10
470COLOUR0:PRINTTAB(16,7)"S":COLOUR2
480PRINTTAB(26,6)CHR$228;" ";CHR$229;"
for CLUE"
490PRINTTAB(26,8)"A-Z for WORD"
500PRINTTAB(24,10)"DELETE to ERASE"
510PRINTTAB(24,12)"@ - REVEAL WORD"
520PRINTTAB(24,14)"^ when FINISHED"
530GOTO640
540DEFPROCprint(A$,X,Y)
550X%=&900
560FORT=1TO(LEN A$)
570B$=MID$(A$,T)
580?X%=ASC(B$):Y%=X%DIV256:A%=10:CALL&
FFF1
590VDU23,224,X%?1,X%?1,X%?2,X%?2,X%?3,
X%?3,X%?4,X%?4
600VDU23,225,X%?5,X%?5,X%?6,X%?6,X%?7,
X%?7,X%?8,X%?8
610PRINTTAB(X+T,Y)CHR$224;TAB(X+T,Y+1)
CHR$225;
620NEXT
630ENDPROC
640RESTORE (B%-10):READSQ
650W%=SQ*4:H%=SQ*4
660X%=96:Y%=692-(H%*8)
670GCOL0,2
680MOVEX%,Y%:MOVEX%+W%*12,Y%
690PLOT85,X%,Y%+12*H%
700PLOT85,X%+W%*12,Y%+12*H%
710RESTORE
720C=0
730RESTORE (B%+C*10)
740READ L:IF L=-1 THEN790
750M%=L MODSQ:N%=(SQ-1)-(L DIV SQ)
760READ F%,C$,A$
770GCOL0,3:PROCsquare
780C=C+1:GOTO730
790EN=C-1:ENDPROC
800DEFPROCsquare
810I%=0:J%=0
820FORQ%=0TO (LEN A$)-1
830IF F%=1 THEN I%=Q% ELSE J%=Q%
840MOVEX%+(M%+I%)*48+4,Y%+(N%-J%)*48+4
850PLOT0,40,0:PLOT81,-40,40:PLOT81,40,
0
860NEXT
870ENDPROC
880
890DEFPROCgame
900CLUE=0:K=1:P%=0
910COLOUR2:COLOUR128:PRINTTAB(3,25)"CL
UE";TAB(1,27)CHR$226
920G%=0:GOTO1030
930OL=0:*FX15,0
940R%=0:I=INKEY(5000):IF I=64THEN R%=1
:P%=P%+1:GOTO1000
950IF I=94 THEN ENDPROC
960IF I<65 THEN930
970IF I=139THEN OL=-1
980IF I=138THEN OL=1
990G%=0:IF OL<>0 THEN 1010
1000PROCguess:G%=1
1010IF OL<3 CLUE=CLUE+OL
1020IF CLUE<0THENCLUE=EN
1030RESTORE (B%+CLUE*10)
1040READ L:IFL=-1THEN CLUE=0:GOTO930
1050IF G%=0:GCOL1,2:PROCsquare
1060READ F%,C$,A$:IF F%=0 D$="DOWN "EL
SE D$="ACROSS"
1070PRINTTAB(3,27)STRING$(39," ");TAB(8
,25)D$;
1080COLOUR3:PRINTTAB(24,16)"CHEAT COUNT
=";P%
1090COLOUR2:PRINTTAB(3,27)C$
1100M%=L MODSQ:N%=(SQ-1)-(L DIV SQ)
1110IF G%=0:GCOL2,1:PROCsquare
1120REMT=TIME:REPEATUNTILTIME>T+5
1130GOTO930
1140DEFPROCguess
1150S%=LENA$:M$=A$:U%=M%:V%=N%:A$="?"
1160VDU5:IF R%=1 THEN1320
1170GOTO1200
1180*FX15,0
1190I=INKEY(5000):IFI=64THENR%=1:P%=P%+
1:A$=M$:M%=U%:N%=V%:GOTO1150
1200IF I=127 THEN1280
1210IF I<65 OR I>90THEN 1180
1220GCOL0,1:PROCsquare:GCOL0,2
1230MOVEX%+M%*48+8,Y%+N%*48+36
1240PRINTCHR$(I);
1250IF F%=1 THEN M%=M%+1 ELSE N%=N%-1
1260S%=S%-1:IF S%=0 THEN VDU4:M%=U%:N%=
V%:SOUND1,-10,50,3:SOUND2,-10,10,3:REPEA
T UNTIL?&EC=0:ENDPROC
1270IF R%=1 THEN1320ELSE1180
1280M%=U%:N%=V%:A$=M$:S%=LEN(A$)
1290GCOL0,1:PROCsquare:A$="?"
1300S%=1
1310GOTO1260
1320I=ASC(MID$(M$,(LEN(M$)-S%+1)))
1330GOTO1220
1340
1350REM FORMAT
1360REM length of square
1370REM (1) POSITION ON SQUARE (1st squ
are is zero)
1380REM (2) DIRECTION (1=across 0=down)
1390REM (3) CLUE
1400REM (4) ANSWER
1410REM -1 end flag
1420
1430DATA 9
1440DATA0,1,FAST,SWIFT
1450DATA1,0,TREE MATERIAL,WOOD
1460DATA3,0,BEND OVER,FOLD
1470DATA6,0,LARGE BOWL,BASIN
1480DATA8,0,MENTAL PICTURE,IMAGE
1490DATA14,1,AGRICULTURAL LAND,FARM
1500DATA18,1,EARTH,WORLD
1510DATA22,0,MANIKIN,DUMMY
1520DATA30,1,IN THE COURSE OF,DURING
1530DATA36,0,SWOON,FAINT
1540DATA38,0,THICK CUT OF MEAT,STEAK
1550DATA45,1,SEASON,AUTUMN
1560DATA50,0,NOT ANY,NONE
1570DATA52,0,INCITE,STIR
1580DATA58,1,ADOLESCENCE,YOUTH
1590DATA63,1,TIDY,NEAT
1600DATA76,1,UNIT OF LENGTH,METRE
1610DATA -1
1620
1630DATA13
1640DATA0,1,TREASURES,HOARDS
1650DATA0,0,ADELAIDE CITY SQUARE,HURTLE
1660DATA2,0,PERSON LACKING IN SKIN PIGM
ENT,ALBINO
1670DATA4,0,PERFORMS,DOES
1680DATA5,0,SMALL FISH,SPRAT
1690DATA7,1,WHIMPER,SOB
1700DATA7,0,SMILE SCORNFULLY,SNEER
1710DATA9,0,S.A. VOLCANIC LAKE,BLUE
1720DATA11,0,COMEDIANS,WITS
1730DATA17,1,AJAR,OPEN
1740DATA22,1,DEN,LAIR
1750DATA23,0,ALOOF,APART
1760DATA26,1,THIEF,ROBBER
1770DATA33,1,BREAK OUT,ERUPT
1780DATA43,1,INDENTICAL,SAME
1790DATA45,0,COCKTAIL,MARTINI
1800DATA48,1,DIRECTION,EAST
1810DATA51,0,PLAYTHING,TOY
1820DATA52,1,NARROW ROAD,LANE
1830DATA53,0,OPERATIC SONG,ARIA
1840DATA55,0,ANCIENT ICELANDIC POEMS,ED
DA
1850DATA57,1,BITTER,TART
1860DATA60,0,PUNGENT TASTE,TANG
1870DATA65,1,WEAR AWAY,ERODE
1880DATA69,0,SNAKE LIKE FISH,EELS
1890DATA73,1,APPROPRIATELY,APTLY
1900DATA74,0,BIER,PYRE
1910DATA76,0,RUN,LOPE
1920DATA81,1,FATE,DESTINY
1930DATA91,1,PERTAINING TO BIRTH,NATAL
1940DATA91,0,BORN,NEE
1950DATA93,0,FRESH WATER FISH,TROUT
1960DATA99,1,MAJOR S.A HARVEST,GRAPE
1970DATA101,0,SKILFUL,ADROIT
1980DATA103,0,FIRST COURSE,ENTREE
1990DATA108,1,TUNE,SONG
2000DATA109,0,PROPRIETOR,OWNER
2010DATA111,0,MIRROR,GLASS
2020DATA113,1,GARDEN PARADISE,EDEN
2030DATA117,1,EPIC POEM,EPOS
2040DATA118,0,DRAMA,PLAY
2050DATA120,0,CROOKED,SKEW
2060DATA122,1,UNTAMED,WILD
2070DATA125,0,SKETCHED,DREW
2080DATA131,1,S.A. WEIGHT LIFTER,LUKIN
2090DATA137,1,ENTHUSIASM,ARDOUR
2100DATA143,1,FRIEND,MATE
2110DATA148,1,COMFORT,EASE
2120DATA159,1,CONFLICT,WAR
2130DATA163,1,WRAP WITH BANDAGES,SWATHE
2140DATA-1
2150DATA13
2160DATA0,0,GRINDING TOOTH,MOLAR
2170DATA2,0,MEDITATED,MUSED
2180DATA5,1,AIM AT HIGH THINGS,ASPIRE
2190DATA5,0,INSECT,ANT
2200DATA6,0,EXAMINE CRITICALLY,SCAN
2210DATA7,0,VIGOR,PEP
2220DATA10,0,MAKES CERTAIN,ENSURES
2230DATA12,0,RIVULETS,STREAMS
2240DATA13,1,ABOUNDING RICHES,OPULENCE
2250DATA17,0,CHEMICAL COMPOUND,ESTER
2260DATA23,1,FISH TRAP,NET
2270DATA30,1,FASTENERS,STAPLES
2280DATA34,0,NON-CLERICAL,LAIC
2290DATA35,0,GEMS,EMERALDS
2300DATA39,1,WATCHFUL,ALERT
2310DATA40,0,RESTED AGAINST,LEANT
2320DATA42,0,ONE WHO SELLS TO CONSUMER,
RETAILER
2330DATA47,1,ENTERTAIN,AMUSE
2340DATA52,1,BUY BACK,REDEEM
2350DATA57,0,SITUATED BETWEEN,MID
2360DATA59,1,JETTY,PIER
2370DATA68,1,NEAT,TRIM
2380DATA71,0,INSANE,MAD
2390DATA73,1,BEST PART,CREAM
2400DATA76,0,FRUIT,APPLE
2410DATA78,1,WILD OX OF CELEBES,ANOA
2420DATA78,0,CLASSIFIES,ASSORTS
2430DATA80,0,OF A HEAVENLY BODIES PATH,
ORBITAL
2440DATA83,1,PERIOD OF TIME,DAY
2450DATA85,0,THOSE WITHIN VIEW,YON
2460DATA87,1,SERPENTS,ASPS
2470DATA91,1,UNDRESS,STRIP
2480DATA95,0,COUNTRY,PERU
2490DATA97,1,PUPPET,DOLL
2500DATA99,0,BURDENS,LOADS
2510DATA106,1,PRODUCED CURRENT OF AIR,B
LEW
2520DATA111,1,LITTLE ROUNDED LUMP,NODUL
E
2530DATA114,0,COMPLETE,UTTER
2540DATA116,0,IRREGULARLY NOTCHED,EROSE
2550DATA117,1,WILLOW USED FOR BASKET WE
AVING,OSIER
2560DATA123,0,MAIN ACTOR,STAR
2570DATA125,1,PLANT,ASTER
2580DATA132,1,RELIED ON,TRUSTED
2590DATA135,0,PRONOUN,SHE
2600DATA137,0,PRINTERS' MEASURES,EMS
2610DATA143,1,BEVERAGE,TEA
2620DATA148,1,POPULAR PETS,HAMSTERS
2630DATA158,1,STRATA,LAYERS
2640DATA-1