Conway’s Life

Date: 198x
Type: Program
Platform(s): TS 2068

Appears on

Library tape of the Indiana Sinclair Timex User’s Group.

Source Code

    1 CLEAR 29999
    2 PRINT AT 10,2;"Leave recorder running","   life data now loading": BEEP .4,15: LOAD "Life M/C"CODE 
    3 INK 9: PAPER 3: BORDER 4: CLS 
   10 PRINT AT 2,8;"CONWAY'S LIFE"
   20 PRINT OVER 1;AT 2,8;"_____________"
   30 PRINT AT 4,3;"THIS PROGRAM  WILL SIMULATE"';"THE EVOLUTION  OF A COLONY OF"';" ""BUGS"""
   40 PRINT AT 8,3;"THE INITIAL COLONY "'"MAY BE RANDOM OR PROGRAMMED"
   50 PRINT AT 11,3;"YOU MAY STOP AT ANY TIME TO"'"CHANGE THE DISPLAY OR RETURN"'" TO THE MENU"
   60 PRINT PAPER 2; INK 9;AT 17,3;"PRESS ANY KEY TO CONTINUE"
   70 IF INKEY$="" THEN GO TO 70
   80 BEEP .2,15: POKE 23659,2: CLS 
   90 PRINT AT 2,13;"MENU"
  100 PRINT OVER 1;AT 2,13;"____"
  110 PRINT AT 5,3;"1:RANDOM START"
  120 PRINT AT 7,3;"2:PROGRAMMED START"
  125 PRINT AT 9,3;"3:END"
  130 PRINT AT 12,2;"WHEN THE PROGRAM IS RUNNING,    KEY ""1"" WILL RETURN TO THE      MENU AND KEY ""2"" WILL ALLOW     CHANGES TO BE MADE TO THE       SCREEN"
  140 PRINT FLASH 1; INK 1; PAPER 9;AT 21,7;"ENTER YOUR CHOICE"
  150 LET a$=INKEY$
  160 IF CODE a$<49 OR CODE a$>51 THEN GO TO 150
  170 IF a$="1" THEN GO SUB 1000: GO SUB 1010: LET l=USR 30088
  180 IF a$="3" THEN GO TO 700
  190 LET l=USR 30351
  200 BEEP .2,15: LET c=16: LET r=11
  205 GO SUB 1000: POKE 23659,0: PRINT PAPER 4; INK 9;AT 22,0;"use cursors to move,3 to return,  4 to enter,9 to erase"
  210 DEF FN p()=22527+(32*r)+c
  220 LET p=FN p()
  230 LET z=PEEK p
  240 POKE p,18
  250 LET d=CODE INKEY$-48: IF d<1 OR d>9 THEN GO TO 250
  260 IF d=3 THEN GO TO 400
  270 IF d=4 THEN GO TO 500
  280 IF d=9 THEN GO TO 600
  285 POKE p,z
  286 BEEP .1,10
  290 LET c=c+(d=8)-(d=5): LET r=r+(d=6)-(d=7)
  310 IF c=33 THEN LET c=1
  311 IF c=0 THEN LET c=32
  312 IF r=22 THEN LET r=0
  313 IF r=-1 THEN LET r=21
  320 GO TO 220
  400 POKE 23659,2: POKE p,z
  405 GO SUB 1000: GO SUB 1010
  410 LET x=USR 30139
  500 LET z=48
  505 BEEP .2,20
  510 POKE p,170: GO TO 245
  600 LET z=54
  605 BEEP .2,0
  610 POKE p,170: GO TO 245
  700 POKE 23659,2: STOP 
 1000 POKE 23684,128: POKE 23685,80: POKE 23686,33: POKE 23687,2: POKE 23659,0: RETURN 
 1010 PRINT PAPER 4; INK 9;AT 22,0;"  enter 1 for menu,2 to alter                             "
 1020 RETURN 
 9998 SAVE "Life" LINE 1: BEEP .4,15: SAVE "Life M/C"CODE 30000,410
 9999 REM VERIFY "Life": BEEP .4,15: VERIFY "Life M/C"CODE 30000,410: GO TO 1

People

No people associated with this content.

Scroll to Top