N: Game Developer Cheat Sheet - FujiNetWIFI/fujinet-firmware GitHub Wiki
BASIC Networking Cheat Sheet
Before you begin
- Start with TNFS://atari-apps.irata.online/Games/lightcycles.atr.
- Use dupdsk on the disk to duplicate it to a new disk
- Boot the new disk.
Opening a client connection to another Atari (or server)
OPEN #1,12,0,"N:TCP://OTHER.ATARI.ADDRESS:PORT/"
Opening a listening socket (to accept a connection from another Atari)
OPEN #1,12,0,"N:TCP://:PORT/"
Listening for a connection
100 IF PEEK(748)=0 THEN 100
110 XIO 65,#1,12,0,"N:":REM ACCEPT THE CONNECTION, #1 IS NOW CONNECTED TO THE OTHER ATARI
Sending
PRINT #1;"SENDING SOME STUFF"
PRINT #1;A;",";B;",";C;",";D:REM SENDING MULTIPLE NUMERIC VALUES
PUT #1,A:XIO 15,#1,12,0,"N:":REM SENDING ONE BYTE WITH A FLUSH
Receiving Data
100 STATUS #1,A:IF PEEK(746)=0 THEN 200:REM GO DO SOMETHING ELSE, NOTHING HERE.
110 INPUT #1;A$:REM RECEVING THAT STRING FROM ABOVE
120 INPUT #1,A,B,C,D:REM GETTING FOUR NUMERIC VALUES
130 GET #1,A:REM GETTING ONE BYTE.
[!tip] If you do a GET or an INPUT, and nothing is waiting, the program will block, waiting for input. This can be used to your advantage to synchronize the two end points, see the reversi example.
Closing the connection
CLOSE #1