L'atelier Test du MSX0 by Jipe
Voila une des première chose que j'ai faite pour travailler sans user mes yeux sur ce minuscule écran
connecter le MSX0 au PC par l'intermédiaire du wifi avec le logiciel prévu dans la carte SD
du coup on peut aussi jouer directement sur le PC
connecter le MSX0 au PC par l'intermédiaire du wifi avec le logiciel prévu dans la carte SD
du coup on peut aussi jouer directement sur le PC
1er reproche au MSX0 Stack : c'est assez dur de passer de l'interface clavier au Game Pad il manque des petites encoches sur le coté pour être pratique
1ére astuce : mettre les vis prévues pour les fixer en les vissant d'un seul tour et s'en servir pour déclipser l'interface en s'appuyant sur une surface plane
2éme reproche : la batterie tient 1H1/4 après c'était en mode connecté au PC avec Zanac qui tournait tout seul
1ére astuce : mettre les vis prévues pour les fixer en les vissant d'un seul tour et s'en servir pour déclipser l'interface en s'appuyant sur une surface plane
2éme reproche : la batterie tient 1H1/4 après c'était en mode connecté au PC avec Zanac qui tournait tout seul
Jipe :
1er reproche au MSX0 Stack : c'est assez dur de passer de l'interface clavier au Game Pad il manque des petites encoches sur le coté pour être pratique
1ére astuce : mettre les vis prévues pour les fixer en les vissant d'un seul tour et s'en servir pour déclipser l'interface en s'appuyant sur une surface plane
1ére astuce : mettre les vis prévues pour les fixer en les vissant d'un seul tour et s'en servir pour déclipser l'interface en s'appuyant sur une surface plane
Tu as peut-être ta première proposition d'amélioration?
Jipe :
2éme reproche : la batterie tient 1H1/4 après c'était en mode connecté au PC avec Zanac qui tournait tout seul
Je ne suis pas étonné, un ESP32 en mode WiFi actif ça consomme entre 200 et 300mA de mémoire, je crois que c'est autour de 230mA rien que le WiFi.
TurboR GT (1Mo), CANON V20! ( en kit, modif 2+ en cours)
Pas encore retrouvés: V9990, Grafx9000, SUNRISE IDE 2x CF, SUNRISE MOONSOUND, FM PAC, MUSIC MODULE, NMS8280, SD SNATCHER,...
TurboR GT (1Mo), CANON V20! ( en kit, modif 2+ en cours)
Pas encore retrouvés: V9990, Grafx9000, SUNRISE IDE 2x CF, SUNRISE MOONSOUND, FM PAC, MUSIC MODULE, NMS8280, SD SNATCHER,...
Citation :
C est cool plus qu a mettre ta sonde dans ton turbo r
pour les températures bruit et lumière j'ai déjà cette cartouche
https://www.msx.org/wiki/Micomsoft_Sensor_Kid
j'ai réussi à configurer le MSX0 en MSX2+ 512 Ko
les images de DSK sont stockées sur la carte micro-SD
j'ai mis un DSK avec SHEM pour fouiller un peu dans la machine
les Roms ne sont pas dans la miro-SD à priori
il faut vraiment que j'essaie de traduire le PDF du Guide d'utilsation
les images de DSK sont stockées sur la carte micro-SD
j'ai mis un DSK avec SHEM pour fouiller un peu dans la machine
les Roms ne sont pas dans la miro-SD à priori
il faut vraiment que j'essaie de traduire le PDF du Guide d'utilsation
ericb59
Membre non connecté
Conseiller Municipal
Jipe :
il faut vraiment que j'essaie de traduire le PDF du Guide d'utilsation
il faut vraiment que j'essaie de traduire le PDF du Guide d'utilsation
https://msxvillage.fr/forum/topic-4473+l-ia-dans-tous-ses-etats.php
ericb59
Membre non connecté
Conseiller Municipal
MSXlegend :
Tu propose L IA a Jipé, tu n'as pas peur toi
Ben.. Google Translate c'est aussi de l'IA, sauf que leur outils n'a pas été mis à jour avec leur IA Gemini. (Pour le moment).
Sinon y a ce très bon outil aussi :
https://www.deepl.com/fr/translator
j'ai commencé a fouiller dans les programmes et surprise : le menu de lancement est entièrement en basic
AUTOEXEC.BAS
SYSMENU.BAS
tout les appels se font par des CALL IOTPUT ou CALL IOTGET
AUTOEXEC.BAS
10 CLEAR 800
20 KEY 6,"_ank:_iotinit()"
30 _IOTGET("msx/me/id",ID)
40 IF ID=1 THEN RUN "SYSMENU.BAS"
20 KEY 6,"_ank:_iotinit()"
30 _IOTGET("msx/me/id",ID)
40 IF ID=1 THEN RUN "SYSMENU.BAS"
SYSMENU.BAS
1000 'SAVE"SYSMENU.BAS"
1010 KEYOFF:COLOR,0,0:SCREEN5:_KANJI:_CLS:COLOR1,15:PUT SPRITE 0,(0,216),0,0
1020 SETPAGE0,3:CLS
1030 SETPAGE3,0:BLOAD"ICON_A.SC5",S
1040 SETPAGE3,1:BLOAD"ICON_B.SC5",S:COLOR=RESTORE
1050 CLEAR 800
1060 OPEN"GRP:"AS#1
1070 DEFINT A-Z
1080 DIM S$(8),PN(8),PX(17),PY(17),PP(17),GX(8),GY(8),OP$(64)
1090 ON STOP GOSUB 2860:STOP ON
1100 ON INTERVAL=4 GOSUB 2590:INTERVAL ON
1110 W=70:H=56:Y=-256
1120 FORI=0TO8:GX(I)=78*(IMOD3)+15:GY(I)=64*(I\3)+16:NEXTI
1130 FORI=0TO17:PX(I)=GX(IMOD9)+1:PY(I)=GY(IMOD9)+1:PP(I)=I/9:NEXTI
1140 SETPAGE3,2:LINE(0,0)-STEP(W,H),0
1150 SETPAGE3,3
1160 'Top menu view
1170 IC=10:IP$="-":BL=-1
1180 TT=0:GOSUB 2300
1190 PN(0)=0:'"Disk"
1200 PN(1)=14'"Reboot"
1210 PN(2)=11'"PwrOff"
1220 PN(3)=3:'"Volume"
1230 PN(4)=4:'"Bright"
1240 PN(5)=5:'"Wi-Fi"
1250 PN(8)=8:'"Next"
1260 GOSUB 2320'Show Button
1270 IF IC>0 THEN IC=IC-1 ELSE IC=100:GOSUB 2550'Show info
1280 GOSUB 2610:IF P=-1 THEN 1270'Check for touch
1290 GOSUB 2790
1300 ON P+1 GOTO 1320,1610,1770,1350,1370,1390,1160,1160,1640
1310 IF EX<>0 THEN RETURN ELSE 1160
1320 'Select Disk
1330 TY=2:N$="msx/u0/drive/a":DN$="Unit0 Disk Image":LN$="host/media/dsk":_IOTFIND(LN$,FC):_IOTFIND(LN$,OP$(0),FC)
1340 GOSUB 2110:GOTO 1160
1350 'Adjust Volume
1360 TY=1:N$="conf/sound/volume":DN$="Volume":GOSUB 2110:GOTO 1160
1370 'Adjust Brightness
1380 TY=1:N$="conf/brightness":DN$="Brightness":GOSUB 2110:GOTO 1160
1390 'Select Wi-Fi
1400 TY=3:N$="":DN$="Wi-Fi":V=0
1410 _IOTGET("conf/wifi/id",WI):WO=WI
1420 OP$(0)="OFF":I=1
1430 _IOTFIND("conf/wifi/list",FC)
1440 FOR J=1 TO FC
1450 _IOTGET("conf/wifi/list/"+RIGHT$(STR$(J),1)+"/ssid",AP$)
1460 IF WI=J THEN V=I
1470 IF AP$<>"" THEN OP$(I)=RIGHT$(STR$(J),1)+":"+AP$:I=I+1
1480 NEXT
1490 OP$(I)="<New Connection>":I=I+1
1500 OP$(I)=""
1510 GOSUB 2110
1520 IF EX=0 THEN 1160
1530 IF LEFT$(OP$(V),2)="<N" THEN 1840
1540 IF LEFT$(OP$(V),2)="OF" THEN WI=0
1550 WI=VAL(LEFT$(OP$(V),1))
1560 IF WO=WI THEN 1600
1570 _IOTPUT("conf/wifi/id",WI)
1580 _IOTPUT("conf/save",1)
1590 _IOTPUT("host/wifi/restart",1)
1600 GOTO 1160
1610 'Reboot Unit0
1620 GOSUB 2210:IF OK=0 THEN 1160
1630 _IOTPUT("msx/u0/pm/reboot",1):GOTO 1160
1640 'Power view
1650 TT=0:GOSUB 2300
1660 PN(0)=12:S$(0)="Game"
1670 PN(3)=16'"Clock"
1680 PN(4)=17'"Info"
1690 PN(5)=9:'"Setup"
1700 PN(6)=10'"Exit"
1710 PN(8)=8:'"Next"
1720 GOSUB 2320'Show Button
1730 GOSUB 2640'Wait for touch
1740 GOSUB 2790
1750 ON P+1 GOTO 1960,1730,1730,1820,1800,1780,1790,1730,1160
1760 GOTO 1640
1770 GOSUB 2210:IF OK=0 THEN 1640 ELSE 1860
1780 GOSUB 2210:IF OK=0 THEN 1640 ELSE 1890
1790 GOSUB 2210:IF OK=0 THEN 1640 ELSE 2860
1800 'Info
1810 RUN"INFO.BAS"
1820 'Clock
1830 RUN"CLOCK.BAS"
1840 'Wi-Fi Setting
1850 RUN"WIFIAP.BAS"
1860 'Power off
1870 _IOTPUT("host/power/off",1)
1880 END
1890 'Enter Setup Utility
1900 COLOR 1,1,1:_CLS
1910 _IOTPUT("conf/setup",1)
1920 _IOTPUT("conf/save",1)
1930 _IOTPUT("host/power/wait",1)
1940 _IOTPUT("host/power/reboot",1)
1950 END
1960 'Game view
1970 TT=0:GOSUB 2300
1980 PN(0)=15:S$(0)="Eject"
1990 PN(1)=12:S$(1)="Zanac"
2000 PN(2)=13:S$(2)="PaiPanic"
2010 PN(8)=1:'"Cancel"
2020 GOSUB 2320'Show Button
2030 GOSUB 2640'Wait for touch
2040 GOSUB 2790
2050 ON P+1 GOTO 2070,2070,2070,2070,2030,2030,2030,2030,1160
2060 GOTO 1960
2070 CI=P:GOSUB 2210:IF OK=0 THEN 1960
2080 _IOTPUT("conf/cartridge_id",CI)
2090 _IOTPUT("conf/save",1)
2100 GOTO 1960
2110 'Param setting view
2120 GOSUB 2300
2130 PN(6)=6:'"-"
2140 PN(7)=7:'"+"
2150 PN(8)=2:'"OK"
2160 GOSUB 2320'Show Button
2170 GOSUB 2430'Show value
2180 TT=0:GOSUB 2640'Wait for touch
2190 GOSUB 2660'Button Event
2200 IF EX<>0 THEN RETURN ELSE 2170
2210 'Ok/Cancel view
2220 TT=0:OK=0:GOSUB 2300:PN(7)=1:PN(8)=2:'"OK"
2230 GOSUB 2320'Show Button
2240 GOSUB 2640'Wait for touch
2250 GOSUB 2790
2260 ON P+1 GOTO 2240,2240,2240,2240,2240,2240,2240,2280,2290
2270 IF EX<>0 THEN RETURN ELSE 2240
2280 EX=1:OK=0:GOTO 2270
2290 EX=1:OK=1:GOTO 2270
2300 'Param init
2310 EX=0:FORI=0TO8:S$(I)="":PN(I)=-1:NEXTI:RETURN
2320 'Show button
2330 _CLS:LL=0
2340 FORI=0TO8
2350 PN=PN(I):IF PN<0 THEN IF S$(I)<>"" THEN 2390 ELSE 2410
2360 COPY(PX(PN),PY(PN))-(PX(PN)+W-2,PY(PN)+H-2),PP(PN)TO(GX(I),GY(I)),3
2370 IF S$(I)<>"" THEN X=GX(I)+W/2-LEN(S$(I))*4:Y=GY(I)+42:COLOR,POINT(X,Y):PRESET(X,Y):PRINT #1,S$(I)
2380 GOTO 2410
2390 LINE(GX(I),GY(I)+H)-STEP(W,0),1:LINE(GX(I)+W,GY(I))-STEP(0,H),1
2400 LOCATE GX(I)/8+1,GY(I)/16+1:COLOR,15:PRINT S$(I)
2410 NEXTI:COLOR,15
2420 RETURN
2430 'Show value
2440 IF TY=1 THEN I=2:IF N$<>"" THEN _IOTGET(N$,V)
2450 IF TY=2 THEN I=3:IF N$<>"" THEN _IOTGET(N$,V$)
2460 IF TY=3 THEN I=3:IF N$<>"" THEN _IOTGET(N$,V)
2470 IF TY=1 THEN D$=STR$(V)
2480 IF TY=2 THEN D$=V$:FOR J=0 TO FC:IF OP$(J)=V$ THEN V=J ELSE NEXT J
2490 IF TY=3 THEN D$=OP$(V)
2500 COLOR 1,15
2510 LOCATE GX(0)/8+1,GY(0)/16+1:PRINT DN$
2520 LOCATE GX(I)/8+1,GY(I)/16+1:PRINT D$;:IF LL>LEN(D$) THEN PRINT SPC(LL-LEN(D$));
2530 LL=LEN(D$)
2540 RETURN
2550 'Show info
2560 PI$=IP$:_IOTGET("host/ip",IP$):IF PI$<>IP$ THEN PRESET(16,160):PRINT #1,"ip:";IP$
2570 LB=BL:_IOTGET("host/battery/level",BL):IF LB<>BL THEN PRESET(16,176):PRINT #1,USING"batt:###%";BL
2580 RETURN
2590 'Touch interrupt
2600 TT=TT OR (PAD(4)<>0):RETURN
2610 'Check for touch
2620 IF TT OR PAD(4)<>0 THEN Y=PAD(6):X=PAD(5):TT=0:I=X\86+(Y\64)*3:IF I<9 AND ABS(PAD(6)-Y)<2 THEN IF S$(I)<>"" OR PN(I)>=0 THEN P=I:RETURN
2630 P=-1:RETURN
2640 'Wait for touch
2650 GOSUB 2610:IF P=-1 THEN GOTO 2650 ELSE RETURN
2660 'Button Event
2670 GOSUB 2790
2680 ON P+1 GOTO 2420,2420,2420,2420,2420,2420,2690,2700,2760
2690 NV=V-1:GOTO 2710
2700 NV=V+1:GOTO 2710
2710 IF NV<0 THEN 2750
2720 IF (TY=2 OR TY=3) AND OP$(NV)="" THEN 2750
2730 V=NV
2740 IF N$<>"" THEN IF TY=2 THEN _IOTPUT(N$,OP$(V)) ELSE _IOTPUT(N$,V)
2750 RETURN
2760 'Exit
2770 EX=1:IF N$<>"" THEN _IOTPUT("conf/save",1)
2780 RETURN
2790 'Button Animation
2800 PN=PN(P):IF PN<0 THEN RETURN
2810 COPY(GX(P),GY(P))-(GX(P)+W-2,GY(P)+H-2),3TO(1,1),2
2820 COPY(0,0)-(W-2,H-2),2TO(GX(P),GY(P)),3
2830 FOR J=0 TO 100:NEXT
2840 COPY(1,1)-(W-1,H-1),2TO(GX(P),GY(P)),3:RETURN
2850 FOR J=0 TO 5:NEXT:RETURN
2860 'Reinitialize console
2870 _ANK:_IOTINIT():COLOR 15,4,7:END
1010 KEYOFF:COLOR,0,0:SCREEN5:_KANJI:_CLS:COLOR1,15:PUT SPRITE 0,(0,216),0,0
1020 SETPAGE0,3:CLS
1030 SETPAGE3,0:BLOAD"ICON_A.SC5",S
1040 SETPAGE3,1:BLOAD"ICON_B.SC5",S:COLOR=RESTORE
1050 CLEAR 800
1060 OPEN"GRP:"AS#1
1070 DEFINT A-Z
1080 DIM S$(8),PN(8),PX(17),PY(17),PP(17),GX(8),GY(8),OP$(64)
1090 ON STOP GOSUB 2860:STOP ON
1100 ON INTERVAL=4 GOSUB 2590:INTERVAL ON
1110 W=70:H=56:Y=-256
1120 FORI=0TO8:GX(I)=78*(IMOD3)+15:GY(I)=64*(I\3)+16:NEXTI
1130 FORI=0TO17:PX(I)=GX(IMOD9)+1:PY(I)=GY(IMOD9)+1:PP(I)=I/9:NEXTI
1140 SETPAGE3,2:LINE(0,0)-STEP(W,H),0
1150 SETPAGE3,3
1160 'Top menu view
1170 IC=10:IP$="-":BL=-1
1180 TT=0:GOSUB 2300
1190 PN(0)=0:'"Disk"
1200 PN(1)=14'"Reboot"
1210 PN(2)=11'"PwrOff"
1220 PN(3)=3:'"Volume"
1230 PN(4)=4:'"Bright"
1240 PN(5)=5:'"Wi-Fi"
1250 PN(8)=8:'"Next"
1260 GOSUB 2320'Show Button
1270 IF IC>0 THEN IC=IC-1 ELSE IC=100:GOSUB 2550'Show info
1280 GOSUB 2610:IF P=-1 THEN 1270'Check for touch
1290 GOSUB 2790
1300 ON P+1 GOTO 1320,1610,1770,1350,1370,1390,1160,1160,1640
1310 IF EX<>0 THEN RETURN ELSE 1160
1320 'Select Disk
1330 TY=2:N$="msx/u0/drive/a":DN$="Unit0 Disk Image":LN$="host/media/dsk":_IOTFIND(LN$,FC):_IOTFIND(LN$,OP$(0),FC)
1340 GOSUB 2110:GOTO 1160
1350 'Adjust Volume
1360 TY=1:N$="conf/sound/volume":DN$="Volume":GOSUB 2110:GOTO 1160
1370 'Adjust Brightness
1380 TY=1:N$="conf/brightness":DN$="Brightness":GOSUB 2110:GOTO 1160
1390 'Select Wi-Fi
1400 TY=3:N$="":DN$="Wi-Fi":V=0
1410 _IOTGET("conf/wifi/id",WI):WO=WI
1420 OP$(0)="OFF":I=1
1430 _IOTFIND("conf/wifi/list",FC)
1440 FOR J=1 TO FC
1450 _IOTGET("conf/wifi/list/"+RIGHT$(STR$(J),1)+"/ssid",AP$)
1460 IF WI=J THEN V=I
1470 IF AP$<>"" THEN OP$(I)=RIGHT$(STR$(J),1)+":"+AP$:I=I+1
1480 NEXT
1490 OP$(I)="<New Connection>":I=I+1
1500 OP$(I)=""
1510 GOSUB 2110
1520 IF EX=0 THEN 1160
1530 IF LEFT$(OP$(V),2)="<N" THEN 1840
1540 IF LEFT$(OP$(V),2)="OF" THEN WI=0
1550 WI=VAL(LEFT$(OP$(V),1))
1560 IF WO=WI THEN 1600
1570 _IOTPUT("conf/wifi/id",WI)
1580 _IOTPUT("conf/save",1)
1590 _IOTPUT("host/wifi/restart",1)
1600 GOTO 1160
1610 'Reboot Unit0
1620 GOSUB 2210:IF OK=0 THEN 1160
1630 _IOTPUT("msx/u0/pm/reboot",1):GOTO 1160
1640 'Power view
1650 TT=0:GOSUB 2300
1660 PN(0)=12:S$(0)="Game"
1670 PN(3)=16'"Clock"
1680 PN(4)=17'"Info"
1690 PN(5)=9:'"Setup"
1700 PN(6)=10'"Exit"
1710 PN(8)=8:'"Next"
1720 GOSUB 2320'Show Button
1730 GOSUB 2640'Wait for touch
1740 GOSUB 2790
1750 ON P+1 GOTO 1960,1730,1730,1820,1800,1780,1790,1730,1160
1760 GOTO 1640
1770 GOSUB 2210:IF OK=0 THEN 1640 ELSE 1860
1780 GOSUB 2210:IF OK=0 THEN 1640 ELSE 1890
1790 GOSUB 2210:IF OK=0 THEN 1640 ELSE 2860
1800 'Info
1810 RUN"INFO.BAS"
1820 'Clock
1830 RUN"CLOCK.BAS"
1840 'Wi-Fi Setting
1850 RUN"WIFIAP.BAS"
1860 'Power off
1870 _IOTPUT("host/power/off",1)
1880 END
1890 'Enter Setup Utility
1900 COLOR 1,1,1:_CLS
1910 _IOTPUT("conf/setup",1)
1920 _IOTPUT("conf/save",1)
1930 _IOTPUT("host/power/wait",1)
1940 _IOTPUT("host/power/reboot",1)
1950 END
1960 'Game view
1970 TT=0:GOSUB 2300
1980 PN(0)=15:S$(0)="Eject"
1990 PN(1)=12:S$(1)="Zanac"
2000 PN(2)=13:S$(2)="PaiPanic"
2010 PN(8)=1:'"Cancel"
2020 GOSUB 2320'Show Button
2030 GOSUB 2640'Wait for touch
2040 GOSUB 2790
2050 ON P+1 GOTO 2070,2070,2070,2070,2030,2030,2030,2030,1160
2060 GOTO 1960
2070 CI=P:GOSUB 2210:IF OK=0 THEN 1960
2080 _IOTPUT("conf/cartridge_id",CI)
2090 _IOTPUT("conf/save",1)
2100 GOTO 1960
2110 'Param setting view
2120 GOSUB 2300
2130 PN(6)=6:'"-"
2140 PN(7)=7:'"+"
2150 PN(8)=2:'"OK"
2160 GOSUB 2320'Show Button
2170 GOSUB 2430'Show value
2180 TT=0:GOSUB 2640'Wait for touch
2190 GOSUB 2660'Button Event
2200 IF EX<>0 THEN RETURN ELSE 2170
2210 'Ok/Cancel view
2220 TT=0:OK=0:GOSUB 2300:PN(7)=1:PN(8)=2:'"OK"
2230 GOSUB 2320'Show Button
2240 GOSUB 2640'Wait for touch
2250 GOSUB 2790
2260 ON P+1 GOTO 2240,2240,2240,2240,2240,2240,2240,2280,2290
2270 IF EX<>0 THEN RETURN ELSE 2240
2280 EX=1:OK=0:GOTO 2270
2290 EX=1:OK=1:GOTO 2270
2300 'Param init
2310 EX=0:FORI=0TO8:S$(I)="":PN(I)=-1:NEXTI:RETURN
2320 'Show button
2330 _CLS:LL=0
2340 FORI=0TO8
2350 PN=PN(I):IF PN<0 THEN IF S$(I)<>"" THEN 2390 ELSE 2410
2360 COPY(PX(PN),PY(PN))-(PX(PN)+W-2,PY(PN)+H-2),PP(PN)TO(GX(I),GY(I)),3
2370 IF S$(I)<>"" THEN X=GX(I)+W/2-LEN(S$(I))*4:Y=GY(I)+42:COLOR,POINT(X,Y):PRESET(X,Y):PRINT #1,S$(I)
2380 GOTO 2410
2390 LINE(GX(I),GY(I)+H)-STEP(W,0),1:LINE(GX(I)+W,GY(I))-STEP(0,H),1
2400 LOCATE GX(I)/8+1,GY(I)/16+1:COLOR,15:PRINT S$(I)
2410 NEXTI:COLOR,15
2420 RETURN
2430 'Show value
2440 IF TY=1 THEN I=2:IF N$<>"" THEN _IOTGET(N$,V)
2450 IF TY=2 THEN I=3:IF N$<>"" THEN _IOTGET(N$,V$)
2460 IF TY=3 THEN I=3:IF N$<>"" THEN _IOTGET(N$,V)
2470 IF TY=1 THEN D$=STR$(V)
2480 IF TY=2 THEN D$=V$:FOR J=0 TO FC:IF OP$(J)=V$ THEN V=J ELSE NEXT J
2490 IF TY=3 THEN D$=OP$(V)
2500 COLOR 1,15
2510 LOCATE GX(0)/8+1,GY(0)/16+1:PRINT DN$
2520 LOCATE GX(I)/8+1,GY(I)/16+1:PRINT D$;:IF LL>LEN(D$) THEN PRINT SPC(LL-LEN(D$));
2530 LL=LEN(D$)
2540 RETURN
2550 'Show info
2560 PI$=IP$:_IOTGET("host/ip",IP$):IF PI$<>IP$ THEN PRESET(16,160):PRINT #1,"ip:";IP$
2570 LB=BL:_IOTGET("host/battery/level",BL):IF LB<>BL THEN PRESET(16,176):PRINT #1,USING"batt:###%";BL
2580 RETURN
2590 'Touch interrupt
2600 TT=TT OR (PAD(4)<>0):RETURN
2610 'Check for touch
2620 IF TT OR PAD(4)<>0 THEN Y=PAD(6):X=PAD(5):TT=0:I=X\86+(Y\64)*3:IF I<9 AND ABS(PAD(6)-Y)<2 THEN IF S$(I)<>"" OR PN(I)>=0 THEN P=I:RETURN
2630 P=-1:RETURN
2640 'Wait for touch
2650 GOSUB 2610:IF P=-1 THEN GOTO 2650 ELSE RETURN
2660 'Button Event
2670 GOSUB 2790
2680 ON P+1 GOTO 2420,2420,2420,2420,2420,2420,2690,2700,2760
2690 NV=V-1:GOTO 2710
2700 NV=V+1:GOTO 2710
2710 IF NV<0 THEN 2750
2720 IF (TY=2 OR TY=3) AND OP$(NV)="" THEN 2750
2730 V=NV
2740 IF N$<>"" THEN IF TY=2 THEN _IOTPUT(N$,OP$(V)) ELSE _IOTPUT(N$,V)
2750 RETURN
2760 'Exit
2770 EX=1:IF N$<>"" THEN _IOTPUT("conf/save",1)
2780 RETURN
2790 'Button Animation
2800 PN=PN(P):IF PN<0 THEN RETURN
2810 COPY(GX(P),GY(P))-(GX(P)+W-2,GY(P)+H-2),3TO(1,1),2
2820 COPY(0,0)-(W-2,H-2),2TO(GX(P),GY(P)),3
2830 FOR J=0 TO 100:NEXT
2840 COPY(1,1)-(W-1,H-1),2TO(GX(P),GY(P)),3:RETURN
2850 FOR J=0 TO 5:NEXT:RETURN
2860 'Reinitialize console
2870 _ANK:_IOTINIT():COLOR 15,4,7:END
tout les appels se font par des CALL IOTPUT ou CALL IOTGET
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie