' }.
' }. |
' | ^
' /\ / \
' \\\\\\ / \ / .[ \
' (-O-O-) / - \ / .; \
' \(-)/ / \ /=----- "\
'*---------00o0--W----0o00-------* / ] \ ^ | / \ |
'@ project name:10questions game @ / . |__ \ / \ | | | |
'@ programed by : HATEM RAYA @ / __ ' \ / \ _| | | |_
'@ DATE : 1998_10_25 @ /J^..| | 4_|_||\ |= | <<==-=-=-=-===>>
'@ COUNTRY LEBANON @ / . [ ,. \ |[ ]| \___ ___ _/ help??
'@ PHONE : 03884745 @ /::::::::::::::::: \_;__|__ | | p
'@ EMAIL: HATEMRAYA@HOTMAIL.COM @ ({{{{{{{{{{ }}}}}}}}})=-=-=-> | # [] | /|\
'@ VOLTS = 5 DC @ | ] ^ [ | .|/ | | /\
'@HTTP//:WW.GEOCITIES.COM/STAMPIC@ | / \ l | | |[*] | |
'@ @ | ' / \ _ | ; | | ; |
'@ @ | , / \ _ |. | | __ |
'@ @ | __ / \ _| []| | - |
'@ @ | ;( ) | | | |- |
'@ @ |00000|~~~~~~~|00000| - | | _ |
'@ @ | -- | | | |---|;\ | __ |
'@ @ | | {|} |. | -__ \ | ' |
'@ @ | . | | |. | _-_ -- -\ | __ |
'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@---|_____|___|___|_____|____--- ___/ .... \____
'------------------------------------------------------------------------------
'last year my sister rayan haded a project for school the project was
'a wood board with 10 question at a side and 10 ansers at anather side
'and a iron nail for each anser and question if you pic the right anser
'the light will go on i volanterd to make it with bs2 and lcd +light petern
'+sound efect when i started i did not estemait the time neded to finsh
'the project .well it neded 10 hours for pro and 6 for hard wear
'bs2***QUESTION GAIME WITH LCD +LIGHS + SOUND + TWO PUSH BOTONS
'NOTE THE EEPROM WAS FULL IT CANT HOLD NO MORE
'DATA THAT IS WHY I DID NOT MAKE A SPECIAL
'PATERN SO I USED PATERN3 THAT IS FOR GOOD ANSWER
'THE PRO USED 235 LINE
ANSER_N VAR BYTE ''' HATEM ABOU RAYA
ANSER VAR BYTE '
anser_1 VAR BYTE
QUES_N VAR BYTE '
MARKS VAR BYTE '
PATT VAR BYTE
indx var byte
note var word
dura var word
r con $ff
G2 con 391
E3 con 658
F3 con 694
Ab3 con 829
Db4 con 1102
Gb4 con 1476
G4 con 1563
A4 con 1754
Bb4 con 1856
BE4 con 1960
C5 con 2084 'oll CON Are notes that i do not claim composing
Db5 con 2204 'as i remember they are for parallax
D5 con 2326
G5 con 3126
I con 254
E5 con 2632
ClrLCD con 1 ' SCOT EDWARD LCD APREVATIONS
DispLf con $18
DispRt con $1C
prn_at con 207
prn_at1 con 143
prn_at2 con 192
b con 16780
dirs=%1111111100001111
on: DIRH= 255
FOR PATT = 0 TO 13
LOOKUP PATT,[0,255,255,231,255,0,255,0,255,0,255,0,255,0],OUTH
PAUSE 64
NEXT
LOOP: ' OUT1= 1
pause 1000 ' EXTERNEL MUSIC IC IF AVAILABEL
serout 1,B,[" RL LibcL "]
SEROUT 1,B,[I,prn_at2,"<Menu Names>"]
Pause 2000
' for b1 = 1 to 15 'shift display
' serout 1,B,[I,DispRt]
' Pause I
' Next
' FOR B4 = 1 TO 27
' serout 1,B,[I,DispLF]
' PAUSE 175
' NEXT
HOLD1: IF IN4 = 0 THEN HOLD1
serout 1,B,[I,ClrLCD]
serout 1,B,["calling rayyan"]
SEROUT 1,B,[I,prn_at2,"884745 menu"]
PAUSE 100
PAUSE 100
DTMFOUT 2,100,100,[8,8,4,7,4,5]
PAUSE 4000
' for b2 = 0 to 5
serout 1,B,[I,ClrLCD]
PAUSE 500
serout 1,B,[" LYCE NATIONAL"]
PAUSE 1000
'next
' serout 1,B,[I,ClrLCD]
' SEROUT 1,B,[I,prn_at2," LYCE NATIONAL"] 'you can omet the (')
' PAUSE 1000 'the lcd efect will go on this
' FOR B4 = 1 TO 16 'lcd pro i found in the internet
' serout 1,B,[I,DispLF] 'and i do not claim it
' PAUSE 175
' NEXT
' serout 1,B,[I,ClrLCD]
' serout 1,B,[" IS THE BEST "]
' pause 2000
START: serout 1,B,[I,ClrLCD]
serout 1,B,["TO PLAY PREES A"]
INDX = 0
MARKS = 0
QUES_N = 0
'B6 = 0
HOLD: IF IN4 = 0 THEN HOLD
GOSUB SONG_START
START1: ANSER = 0
ANSER_N = 0
INDX = 0
'B6 = 0
QUESTION_N:
QUES_N = QUES_N + 1
BRANCH QUES_N,[Q1,Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8,Q9,Q10,DISP_MARKS]
'THIS IS THE MAINLOOP
PRES_AB: serout 1,B,[I,ClrLCD]
SEROUT 1,B,[" PRESS A OR B "]
SEROUT 1,B,[I,prn_at2," BUTTON "]
'PAUSE 2000
WAIIT: ANSER = INB 'INB COMBINS IN4+IN5 BOTON A OR BOTON B. IN6+7 ARE NOT
' USED BUT MUST BE GROUNDED BY 1K RESISTOR
IF ANSER = 0 THEN WAIIT
IF ANSER <> anser_1 THEN WRONG
GOOD: serout 1,B,[I,ClrLCD]
serout 1,B,[" WRItE ANSWER"]
MARKS = MARKS + 1
GOSUB SONG_GOOD
GOSUB PAT_GOOD
GOTO START1
WRONG: serout 1,B,[I,ClrLCD]
serout 1,B,[" WRONG ANSWER"]
GOSUB SONG_BAD
GOSUB PAT_BAD
GOTO START1
DISP_MARKS:serout 1,B,[I,ClrLCD]
serout 1,B,["YOUR MARKS="]
SEROUT 1,B,[I,140,DEC MARKS]
PAUSE 4000
IF MARKS>= 8 THEN DISP_WINER
GOTO START 'END OF PROGRAM
DISP_WINER:serout 1,B,[I,ClrLCD]
serout 1,B,["YOU ARE A WINER"]
SEROUT 1,b,[I,PRN_AT2,"GOOD STUDENT"]
GOSUB SONG_WINER
GOSUB SONG_WINER
GOSUB PAT_GOOD
GOTO START
END ' THIS LINE IS JUST TO KNOW THE END OF PRO
T_F: SEROUT 1,B,[I,prn_at2,"A=TRUE B= FALSE"]
RETURN
Q1: serout 1,B,[I,ClrLCD]
serout 1,B,["LIGHT SPEED"]
SEROUT 1,B,[I,prn_at2,"IN 1 SECOND=?"]
PAUSE 5000
serout 1,B,[I,ClrLCD]
SEROUT 1,B,["A= 200900 K.M"]
SEROUT 1,b,[I,PRN_AT2,"B= 3000000 K.M"]
PAUSE 4000
anser_1 = 2
goto PRES_AB
Q2: serout 1,B,[I,ClrLCD]
serout 1,B,["12+12= 24"]
GOSUB T_F
PAUSE 5000
anser_1 = 1
goto PRES_AB
Q3: serout 1,B,[I,ClrLCD]
SEROUT 1,B,["EGSS HATCH AT 39C"]
GOSUB T_F
PAUSE 5000
anser_1 = 1
goto PRES_AB
Q4: serout 1,B,[I,ClrLCD]
SEROUT 1,B,["MUSCLS JOINS"]
SEROUT 1,B,[I,prn_at2,"BONES TOGETHER"]
PAUSE 5000
serout 1,B,[I,ClrLCD]
GOSUB T_F
PAUSE 2000
anser_1 = 2
goto PRES_AB
Q5: serout 1,B,[I,ClrLCD]
serout 1,B,["10*10= 100"]
GOSUB T_F
PAUSE 5000
anser_1 = 1
goto PRES_AB
Q6: serout 1,B,[I,ClrLCD]
serout 1,B,["SUN>THEN MOOON"]
GOSUB T_F
PAUSE 5000
anser_1 = 1
goto PRES_AB
Q7: serout 1,B,[I,ClrLCD]
serout 1,B,["O.98789 > 123"]
GOSUB T_F
PAUSE 5000
anser_1 = 2
goto PRES_AB
Q8: serout 1,B,[I,ClrLCD]
serout 1,B,["LEBANON=1O452.KM"]
GOSUB T_F
PAUSE 5000
anser_1 = 1
goto PRES_AB
Q9: serout 1,B,[I,ClrLCD]
serout 1,B,["SPIDER GET 4LEGS"]
GOSUB T_F
PAUSE 5000
anser_1 = 2
goto PRES_AB
Q10: serout 1,B,[I,ClrLCD]
SEROUT 1,B,["WOOD IS GOOD"]
SEROUT 1,B,[I,prn_at2,"CODUCTV FOR HEAT"]
PAUSE 5000
anser_1 = 2
serout 1,B,[I,ClrLCD]
GOSUB T_F
goto PRES_AB
TON_OUT :
freqout 2,dura,note
RETURN
SONG_START: for indx = 0 TO 16
lookup indx,[ G4, D5, C5,BE4, A4, G5, D5, C5,BE4, A4, G5, D5, C5,BE4, C5, A4,0],note
lookup indx,[800,800,150,150,150,800,800,150,150,150,800,800,150,150,150,800],dura
GOSUB TON_OUT
NEXT
RETURN
SONG_GOOD:FOR indx = 0 TO 8
lookup indx,[Db4,Gb4,Bb4,Db5,R,Bb4,Db5,0],note
lookup indx,[150,150,150,300,9,200,600,200],dura
GOSUB TON_OUT
NEXT
RETURN
SONG_BAD: FOR indx = 0 TO 20
lookup indx,[ F3,R, F3,R, F3,R, F3,R,Ab3,R, G2,R, G2,R, F3,R, F3,R, E3,R, F3,0],note
lookup indx,[400,3,300,3,100,1,300,9,300,1,100,5,300,1,120,5,300,9,200,9,400],dura
GOSUB TON_OUT
NEXT
RETURN
song_winer:' B6 = 1
FOR indx = 0 TO 20
lookup indx,[ C5, R, C5, R, C5, R, C5,BE4, A4,BE4, C5, D5,R, C5, E5, R, E5, R, E5,0],note
lookup indx,[450,50,400,50,750,90,200,300,200,300,200,300,5,200,450,30,450,50,800],dura
GOSUB TON_OUT
NEXT
RETURN
PATSTART: DIRH =255
FOR PATT = 0 TO 13
LOOKUP PATT,[0,129,195,231,255,0,255,0,255,0,255,0,255,0],OUTH
PAUSE 250
NEXT
RETURN
PAT_GOOD: DIRH =255
FOR PATT = 0 TO 26
LOOKUP PATT,[0,1,2,4,8,16,32,64,128,128,64,32,16,8,4,2,1,15,240,15,240,15,0,255,0,255,0],OUTH
PAUSE 90
NEXT
'IF B6 = 1 THEN START
RETURN
PAT_BAD: DIRH =255
FOR PATT = 0 TO 8
LOOKUP PATT,[255,126,60,24,0,24,0,24,0],OUTH
PAUSE 500
NEXT
RETURN
' LED
'OUTH * 8 -------------/\/\/\/\--------|>------GND
' 1K
'
'STAMP PIN 2--------/\/\/\//\-------------2222TRANSISOR BAISE
' ''2222 COLECTER TO SPEAKER
' 2222 EMITER TO GND
'
'
'STAMP PIN1 ---------------LCD
' _ PUSH BUTON A
' _|_
'PIN4-------------------------------T T-------------+5VOLTS
' >
' <1K
' >
' <
' | GND
' _ PUSH BUTON B
' _|_
'PIN5-------------------------------T T-------------+5VOLTS
' >
' <1K
' >
' <
' | GND
'
'
'
'