Commodore FujiNet Quickstart Guide - FujiNetWIFI/fujinet-firmware GitHub Wiki

Commodore 64 Quickstart Guide

Version and Date: v1.5 DEC 2023 Meatloaf / Fujiloaf is currently in heavy beta. Software and hardware features are subject to change. Connect to the Discord channel for the latest updates.

Hardware Options

FujiNet for Commodore is still under development and hardware is still in the experimental stage. FujiNet uses the IEC bus so building a prototype for testing is fairly simple, needing only 6 wires and an ESP32.

Custom Prototype

You need an ESP32-WROVER Devkit board (minimum 8MB Flash, 8MB PSRAM), a DIN 6 plug and some wire to connect them. We recommend using the official ESP32-DEVKITC-VE made by Espressif. We have also had success with the Lolin D32 Pro which also has an onboard MicroSD card socket. Pinouts are defined in software and it is easiest to match the pinout of our generic IEC board.

LOLIN D32 PRO

You could also use the LOLIN D32 PRO ESP32 board which contains hardware that may be enabled in future versions of Meatloaf. The device is available from AliExpress. You would need to load the Meatloaf-Specialty firmware to enable operation on this board. Here is the wiring diagram:

FujiApple

If you have a FujiApple Rev0 (FujiNet for Apple II) you can use it to test Commodore by building an adapter cable using the pinout below:

IEC-to-FujiApple-Pinout

When configuring the firmware build, use build_board = fujiapple-iec.

Firmware

You can follow the Board Bring Up Guide to install PlatformIO and build firmware for Commodore.

Setting Wifi SID and PW

Since there is currently (summer 2023) no working CONFIG for C64 FujiNet you have two options to configure the FN for your local network.

  1. Pop the SD card and copy a working fconfig.ini file with Wifi section
  2. Set the info in BASIC

This will cover option 2 above.

First, go to upper/lower mode ( press the commodore key and shift)

then enter this, substituting in your SID and PW:

 OPEN1,15,15,"SETSSID:SSID,PASS":CLOSE1

  • Note: If your SSID has capital letters, the SETSSID command must contain the capitalized letters. This may display PETSCII in the command. Reboot the FN and it should connect to your wifi.

Use FujiNet as a Modem

  • startup C64 with Fujinet attached to IEC
LOAD"ML:NETCAT",8
RUN

In the NETCAT Type:

telnet://bbs.retroacademy.it:6510

Try out the Slideshows in PETSCI!

PTERM is also available for use in Meatloaf. It can be loaded from the Meatloaf file repository. Connect to your favorite BBS. Type:

LOAD"ML:PTERM",8

PXL_20231229_180124649

Loading and running Apps

There are two network disk devices running in the CBM firmware: the standard (for FujiNet) TNFS device (given number 12 for CMB kernel) and the ML (Meatloaf) HTTP device

Custom File Browser

The Meatloaf distribution contains a modified version of FB64, a filebrowser for Commodore 64/128 computers originally intended . This allows easy navigation and loading of files either locally on the SD card or on internet connected file repositories running the Meatloaf file script.

Load it by typing:

Load "ML:FB64",8

PXL_20231229_050144804

TNFS

Loading via TNFS should be familiar if you have used FN on other supported platforms.

Note about CASE: In these and other examples you may see the LOAD command used with URIs that are upper or lower case. Due to the strangeness of PETSCII you should always be typing in UPPER CASE. When the URIs are sent out to the remote servers they will become lower case. So even if you see an example in lowercase here, type it on the Commodore in uppercase.

LOAD"TNFS://apps.irata.online/petsciiterm.prg",12
LOAD"TNFS://APPS.IRATA.ONLINE/COMMODORE/TESTS/ISS",12


RUN

Some more examples:

LOAD"TNFS://FUJINET.DILLER.ORG/C64/DIGDUG.PRG",12
LOAD"TNFS://FUJINET.DILLER.ORG/C64/DIGDUG-6DH.PRG",12
LOAD"TNFS://FUJINET.DILLER.ORG/C64/CDS-TEST.PRG",12

RUN

MeatLoaf

Loading via meatloaf is done with the ML: prefix in the LOAD command. Some samples are below. All the programs are

LOAD"ML:GAME$",8

 LOAD"ML:EMPIRE",8,1

 LOAD"ML:DIGDUG",8,1

Other Functions

JSON

Meatloaf supports the parsing of JSON requests. This opens possibilities of collecting and collating information from all types of sources over the internet. Here is a sample that retrieves and displays a random Chuck Norris joke:

10 rem *** open comms
11 open 15,16,15, ""
12 open 2,16,2,"https://api.chucknorris.io/jokes/random"

20 rem *** receive, parse, print data
21 print#15, "jsonparse,2"
22 print#15, "jq,2,/value"
23 print#15, "biteparse,2,80"
24 input#2, j$: print j$;
25 if(st and 64)=0 then goto 24

30 rem *** close
31 close 2: close 15

Want to Run Your Own File Server?

Grab the script from Here. All you will need is a host that runs PHP.

More information is available at https://meatloaf.cc