mirror of
https://github.com/equant/apple2idiot.git
synced 2024-06-13 08:29:38 +00:00
Refactored simple BASIC wifi tools
This commit is contained in:
parent
d2e4ee41ea
commit
77d1a72275
BIN
examples/00_wifi_scan-basic/00_wifi_scan-basic.dsk
Normal file
BIN
examples/00_wifi_scan-basic/00_wifi_scan-basic.dsk
Normal file
Binary file not shown.
4
examples/00_wifi_scan-basic/CSCANWIFI.BAS
Normal file
4
examples/00_wifi_scan-basic/CSCANWIFI.BAS
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
5 REM define COMMANDWIFISCAN 21
|
||||||
|
10 WC = 21
|
||||||
|
100 CA = 49665 : REM Card slot 2?
|
||||||
|
150 POKE CA,WC
|
17
examples/00_wifi_scan-basic/README.md
Normal file
17
examples/00_wifi_scan-basic/README.md
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
|
||||||
|
#. Load `00_wifi_scan-basic.dsk` into your Apple II
|
||||||
|
#. Load `00_wifi_scan-basic.ino` into your apple2idiot card in slot 2.
|
||||||
|
|
||||||
|
At BASIC prompt on Apple II do...
|
||||||
|
|
||||||
|
```BASIC
|
||||||
|
RUN CWIFISCAN.BAS
|
||||||
|
RUN WIFISCAN.BAS
|
||||||
|
RUN SHOWIP.BAS
|
||||||
|
```
|
||||||
|
|
||||||
|
CWIFISCAN tells the card to scan for access points.
|
||||||
|
|
||||||
|
WIFISCAN shows the results, and lets you choose an access point and enter a password
|
||||||
|
|
||||||
|
SHOWIP does just that.
|
52
examples/00_wifi_scan-basic/SCANWIFI.BAS
Normal file
52
examples/00_wifi_scan-basic/SCANWIFI.BAS
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
1 REM from A2Icommands.h ...
|
||||||
|
2 REM #define COMMANDWIFISCAN 21
|
||||||
|
3 REM #define COMMANDWIFICONNECT 22
|
||||||
|
4 REM #define COMMANDWIFIDISCONNECT 23 // Unimplemented
|
||||||
|
5 REM #define WIFICONNECTED 24 // Unimplemented
|
||||||
|
6 REM #define WIFINOTCONNECTED 25 // Unimplemented
|
||||||
|
10 REM CWYFYSCAN = 21 : REM SCAN
|
||||||
|
11 WC = 22 : REM WIFI CONNECT
|
||||||
|
12 REM CWYFYDISCONNECT = 23 : REM DISCONNECT
|
||||||
|
90 REM ########################################
|
||||||
|
100 CA = 49664: REM CARD ADDRESS 0XCN0
|
||||||
|
120 AA = CA +1: REM APPL CMD ADDRESS
|
||||||
|
140 ESPA = CA: REM ESP CMD ADDRESS
|
||||||
|
150 MAXSTR = 22: REM TO LIMIT GOING BEZERK
|
||||||
|
160 NAP = PEEK(CA +1): REM NUM ACCESS POINTS
|
||||||
|
165 OFF = CA +4: REM ADDRESS OFFSET
|
||||||
|
166 REM #### LIST APS
|
||||||
|
167 PRINT ""
|
||||||
|
168 PRINT "AP #","ACCESS POINT"
|
||||||
|
169 PRINT "----","-------------------"
|
||||||
|
170 FOR J = 0 TO NAP
|
||||||
|
171 S$ = ""
|
||||||
|
200 FOR N = 0 TO MAXSTR
|
||||||
|
215 P = N +OFF
|
||||||
|
220 C = PEEK(P)
|
||||||
|
230 IF C = 0 THEN GOTO 400
|
||||||
|
240 S$ = S$ + CHR$(C)
|
||||||
|
245 REM PRINT N+1,P,C, CHR$ (C)
|
||||||
|
250 NEXT N
|
||||||
|
400 PRINT J +1,S$
|
||||||
|
420 OFF = P +1
|
||||||
|
450 NEXT J
|
||||||
|
590 PRINT ""
|
||||||
|
600 INPUT "SELECT WIFI AP #:";APN
|
||||||
|
620 INPUT "PASSWORD (BLANK IF NONE): ";PASS$
|
||||||
|
630 POKE AA +1,APN
|
||||||
|
640 WS$ = PASS$
|
||||||
|
645 WA = AA +2
|
||||||
|
650 GOSUB 2000
|
||||||
|
700 POKE AA,WC: REM TELL ESP TO USE AP
|
||||||
|
1066 END
|
||||||
|
1900 REM ##### SUBS #######
|
||||||
|
2000 REM WRITE WS$ TO WA
|
||||||
|
2100 IF LEN(WS$) = 0 THEN GOTO 2360
|
||||||
|
2200 FOR N = 0 TO LEN(WS$) -1
|
||||||
|
2210 P = WA +N
|
||||||
|
2220 C$ = MID$ (WS$,N +1,1)
|
||||||
|
2230 REM PRINT C$, ASC (C$)
|
||||||
|
2240 POKE P, ASC(C$)
|
||||||
|
2350 NEXT N
|
||||||
|
2360 POKE P +1,0 : REM NULL TERMINATED STRING
|
||||||
|
2370 RETURN
|
|
@ -7,4 +7,4 @@
|
||||||
221 C2 = PEEK(P +1)
|
221 C2 = PEEK(P +1)
|
||||||
222 C3 = PEEK(P +2)
|
222 C3 = PEEK(P +2)
|
||||||
223 C4 = PEEK(P +3)
|
223 C4 = PEEK(P +3)
|
||||||
245 PRINT STR$(C1) +"." + STR$(C2) +"." + STR$(C3) +"." + STR$(C4)
|
245 PRINT STR$(C1) +"." + STR$(C2) +"." + STR$(C3) +"." + STR$(C4)
|
14
examples/00_wifi_scan-basic/make-disk.bash
Normal file
14
examples/00_wifi_scan-basic/make-disk.bash
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
diskname='00_wifi_scan-basic.dsk'
|
||||||
|
files_to_add=CSCANWIFI.BAS,SCANWIFI.BAS,SHOWIP.BAS
|
||||||
|
|
||||||
|
for f in ${files_to_add//,/ };
|
||||||
|
do
|
||||||
|
echo "-------------------------"
|
||||||
|
echo Removing file: $f
|
||||||
|
java -jar ~/bin/AppleCommander.jar -d $diskname $f
|
||||||
|
echo Adding file: $f
|
||||||
|
java -jar ~/bin/AppleCommander.jar -bas $diskname $f < $f
|
||||||
|
done
|
||||||
|
|
||||||
|
#java -jar ~/bin/AppleCommander.jar -l diskname
|
||||||
|
#java -jar ~/bin/AppleCommander.jar -as ~/bin/ADTPro-2.1.0/disks/dev.dsk weather bin < weather.apple2
|
|
@ -1,2 +0,0 @@
|
||||||
100 CA = 49665
|
|
||||||
150 POKE CA,111
|
|
|
@ -1,41 +0,0 @@
|
||||||
100 CA = 49664: REM CARD ADDRESS 0XCN0
|
|
||||||
120 AA = CA +1: REM APPL CMD ADDRESS
|
|
||||||
140 ESPA = CA: REM ESP CMD ADDRESS
|
|
||||||
150 MAXSTR = 22: REM TO LIMIT GOING BEZERK
|
|
||||||
160 NAP = PEEK(CA +3): REM #ACCESS POINTS
|
|
||||||
165 OFF = CA +4: REM ADDRESS OFFSET
|
|
||||||
167 PRINT ""
|
|
||||||
168 PRINT "AP #","ACCESS POINT"
|
|
||||||
169 PRINT "----","-------------------"
|
|
||||||
170 FOR J = 0 TO NAP
|
|
||||||
171 S$ = ""
|
|
||||||
200 FOR N = 0 TO MAXSTR
|
|
||||||
215 P = N +OFF
|
|
||||||
220 C = PEEK(P)
|
|
||||||
230 IF C = 3 THEN GOTO 400
|
|
||||||
240 S$ = S$ + CHR$(C)
|
|
||||||
245 REM PRINT N+1,P,C, CHR$ (C)
|
|
||||||
250 NEXT N
|
|
||||||
400 PRINT J +1,S$
|
|
||||||
420 OFF = P +1
|
|
||||||
450 NEXT J
|
|
||||||
590 PRINT ""
|
|
||||||
600 INPUT "SELECT WIFI AP #:";APN
|
|
||||||
620 INPUT "PASSWORD (BLANK IF NONE): ";PASS$
|
|
||||||
630 POKE AA +1,APN
|
|
||||||
640 WS$ = PASS$
|
|
||||||
645 WA = AA +2
|
|
||||||
650 GOSUB 2000
|
|
||||||
700 POKE AA,112: REM TELL ESP TO USE AP
|
|
||||||
1066 END
|
|
||||||
1900 REM ##### SUBS #######
|
|
||||||
2000 REM WRITE WS$ TO WA
|
|
||||||
2100 IF LEN(WS$) = 0 THEN GOTO 2360
|
|
||||||
2200 FOR N = 0 TO LEN(WS$) -1
|
|
||||||
2210 P = WA +N
|
|
||||||
2220 C$ = MID$ (WS$,N +1,1)
|
|
||||||
2230 REM PRINT C$, ASC (C$)
|
|
||||||
2240 POKE P, ASC(C$)
|
|
||||||
2350 NEXT N
|
|
||||||
2360 POKE P +1,3
|
|
||||||
2370 RETURN
|
|
Loading…
Reference in New Issue
Block a user