' }. ' }. | ' | ^ ' /\ / \ ' \\\\\\ / \ / .[ \ ' (-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 '
' ' '