[ Go to Stephen's Entry Page ]
[ TI Book front page | TI Resources Page | PC99 Review | PC99 Programs ]
contact - please use subject="pc99 page" to avoid spam trap!

This page contains a simple TI Basic program which has moving sprites, speech, and continuously playing music, without a call sound in sight. It requires the mini memory module. You only get speech if you also have the speech synthesiser module.

My thanks to Mark Wills who unburied this little gem.

MEMORY RESERVATION: If you have a disk controller attached, the controller will reserve memory (Call Files(3) ) and prevent the Basic program crashing into the sound table. If you do not have a disk controller attached, then before you load this program, you MUST protect the sound table by keying in in direct mode: CALL LOAD(-31887,57,108) [ENTER] then key in NEW [enter] then load this program.


1 CALL CLEAR
2 PRINT "BEFORE LOADING THIS PROGRAM DID YOU REMEMBER TO RESERVE MEMORY BY KEYIN
G IN:"
3 PRINT "CALL LOAD(-31888,57,108)":"IF YOU DID,PRESS ENTER":"OTHERWISE BREAK AND
 DO IT!"
4 CALL SOUND(-200,-7,0)
5 INPUT A$
100 CALL CLEAR
109 REM  (C) 1985  S.SHAW!! 
110 PRINT "IN TI BASIC YOU CANNOT HAVE-"
120 PRINT "SPRITES":"SPEECH"::::"THE TI99/4A DOES NOT PERMIT-"
130 PRINT "SIMULTANEOUS SPEECH AND     MUSIC":"CONTINUOUS AUTOMATIC MUSIC"
139 REM  A COUPLE OF SPRITES:     
140 CALL POKEV(768,62,15,138,15,150,200,138,15,208)
149 REM  MOVING SLOWLY: 
150 CALL POKEV(1920,0,5,0,0,0,5,0,0)
159 REM  LET'S MOVE THEM!: 
160 CALL LOAD(-31878,2)
169 REM  AND GIVE THEM AN INTERESTING SHAPE: 
170 A$="1030327FF82"
180 B$="000032FF7070301"
189 REM  SET SPEECH ADDRESS 
190 V=-27648
199 REM  LOAD SOUND TABLE: 
200 CALL POKEV(14700,3,142,15,144,30)
210 CALL POKEV(14705,3,133,13,144,60)
220 CALL POKEV(14710,3,128,15,146,30)
230 CALL POKEV(14715,3,142,15,144,15)
240 CALL POKEV(14720,3,141,17,145,15)
250 CALL POKEV(14725,3,142,15,146,30)
260 CALL POKEV(14730,3,129,20,146,30)
270 CALL POKEV(14735,3,141,17,144,15)
280 CALL POKEV(14740,3,129,20,146,15)
290 CALL POKEV(14745,3,131,21,146,30)
300 CALL POKEV(14750,3,140,23,146,30)
310 CALL POKEV(14755,3,139,26,144,60)
320 CALL POKEV(14760,3,141,17,146,30)
330 CALL POKEV(14765,3,141,17,144,60)
340 CALL POKEV(14770,3,142,15,146,30)
350 CALL POKEV(14775,3,133,13,144,60)
360 CALL POKEV(14780,3,128,15,146,30)
370 CALL POKEV(14785,3,142,15,144,15)
380 CALL POKEV(14790,3,141,17,145,15)
390 CALL POKEV(14795,3,142,15,146,30)
400 CALL POKEV(14800,3,129,20,146,30)
410 CALL POKEV(14805,3,141,17,144,15)
420 CALL POKEV(14810,3,129,20,145,15)
430 CALL POKEV(14815,3,131,21,146,30)
440 CALL POKEV(14820,3,140,23,146,30)
450 CALL POKEV(14825,3,129,20,144,60)
460 CALL POKEV(14830,3,134,00,159,30)
469 REM  AND TELL THE CONSOLE "PLAY IT AGAIN TEX": 
470 CALL POKEV(14835,0,57,108)
479 REM  TELL IT WHERE TO START FROM: 
480 CALL LOAD(-31796,57,108)
489 REM  TELL IT TABLE IS IN VDP RAM AREA: 
490 CALL PEEK(-31747,A)
500 IF A/2<>INT(A/2)THEN 520
510 CALL LOAD(-31747,A+1)
511 REM  LETS HAVE A DISPLAY:     
512 REM CHARACTER : is a colon
520 PRINT "   :":"     :::":"  :"::::
529 REM  DEFINE CHR$(58) AS A ZERO: 
530 CALL PEEKV(1152,A,B,C,D,E,F,G,H)
540 CALL POKEV(1232,A,B,C,D,E,F,G,H)
549 REM  TELL CONSOLE TO START PLAYING MUSIC: 
550 CALL LOAD(-31794,1)
559 REM  WHILE MUSIC IS PLAYING LETS CHANGE THE DISPLAY A LITTLE: 
560 FOR T=1152 TO 1231
570 CALL PEEKV(T,A,B,C,D,E,F,G,H)
580 CALL CHAR(42,B$)
589 REM  INSERT TIME DELAYS FOR SPEECH: 
590 IF T/7<>INT(T/7)THEN 610
599 REM  MAKE IT SPEEK! (SPEECH SYNTH REQUIRED): 
600 CALL LOAD(V,70,"",V,65,"",V,72,"",V,70,"",V,64,"",V,80)
609 REM  REDEFINE DISPLAYED CHARACTER: 
610 CALL POKEV(1512,A,B,C,D,E,F,G,H)
620 CALL CHAR(42,A$)
630 NEXT T
640 GOTO 560
650 END
660 REM  TI BASIC REQUIRES MINI MEMORY MODULE PLUS SPEECH SYNTH.  
670 REM  MAKE LINE 600 A REM IF YOU DON'T HAVE THE SPEECH SYNTH. 

[ TI Book front page | TI Resources Page | PC99 Review | PC99 Programs ]
read about addfreestats visitor tracker