It’s Monday July 25th and still very hot out – and this is This Week in Fujinet for week 29 of 2022. This posting covers July 17-24.
There is a heatwave over the USA- over all the US. Its a large sustained heat wave that is keeping many people indoors, including those attending Kansasfest 2022 which was on this week. With Kansasfest and its Fujinet presentation I hope everyone is ready for some more Apple II news.
You can find more information about the FujiNet project and purchasing a device at these locations:
- FujiNet Official Site
- Buy A FN Device from Vintage Computer Center
- Buy A FN Device from Arcade Shopper
- Wiki Pages for Devices & Coding
- Join our Discord
- The FujiNet Facebook Group
FujiNet Flasher is here – keep your FN up2date.
Special Kansasfest 2022 Report
- JeffP’s presentation PDF download
- JeffP’s presentation on YouTube [not available yet- will be updated when available!]
Discord Channel
The fujinet-a2 channel was created back on the 15th and there were sporadic comments as we wound our way towards Friday the 22nd when JeffP had his presentation. It wasn’t just at Jeff’s Fujinet presentation that there were mentions of the FujiNet – I tried to listen to most of the content Friday and the Fujinet was mentioned in at least two other presentations. There was a lot of discussion in the Discord channel, this is a summary of it. Quotes are directly from Discord, all other text is my opinion of the discussion and events!
“Lord” Code Masseur and Mozz kicked things off on Wednesday, discussing code and helping and asking for a little backstory on what is Fujinet and what is the status of Apple II boards. Jeff pointed to the Wiki Apple II Quickstart – which is a very useful guide for figuring out where to start with all this. TCH asked for help with getting a solid basic.system extension going, which is the big software hurdle for now.
Thursday Petar Puskarich and JeffP began to get ready for their joint presentation on Friday.
Friday at about 5:30 eastern time the presentation started. There was Discord discussions throughout the entire presentation. JimM kicked things off with the obvious question to all the Apple people:
Jim Maricondo (Twilight II): How did you choose the name FujiNet??
Andrew Hogan: I was too embarrassed to ask that same question.
Thom Cherryhomes: @Jim Maricondo (Twilight II) Kay Savetz came up with the name, a reference to the Atari logo (a stylized Mt. Fuji), we had to change it when Jason Scott pointed out to us we could get lawnmowered by Atari’s legal dept.
There were some comments about how far the project has come from its first foray into Apple protocols when Jeff was asking around about Smartport in the Apple2 slack server. The 30 minutes flew by with JeffP and PetarP talking about the project and showing some live demos- loading CONFIG and then loading the ISS tracker application live. The presentation went well and hopefully will be released and put up on Youtube soon for others to view. The praise for the project was echoed in the chat:
Joe (Joe’s Computer Museum): Best. Thing. For. Apple ][. In. Years. Full stop.
After the presentation completed there was a flurry of activity on the KF discord chat. Questions about availability, resources to read more (the wiki is that resource), options for DIY using ESP32 devkits. The question of non-SmartPort Apples was asked and the options for those discussed.
equant, who presented a project called apple2idiot – was interested in helping. His board is a very close project to the FujiNet. He’s developed a board to go into Apple 2 slot that contains a ESP32 devkit. He has written a number of Apple II programs that have analogs in the Fujinet ecosystem. It’s clear that these two projects can help each other out. Using a carrier-board for possible FujiNet slot was discussed but never pursued.
Another interesting project at KF was the Mega IIe where James/baldengineer has taken the Mega II chip from the IIGS and proven that there is some sort of AppleIIe contained in the chip. Could it be a full Apple on a chip? Could it be used to create a modern mini-Apple IIe? Could Fujinet be incorporated into it? These are all things that the baldengineer seemed to start to consider after the presentation and discussion…
James (baldengineer): I have a thought on getting Smartport to work, but I haven’t been able to get back to it… Watching the FN demo today put Smartport back on my todo list
As more questions and remote participants trickled in TCH posted a slew of his YT videos to help people understand the backstory of the Fujinet and what the team is trying to create with this project. It’s more than just a virtual disk mounter and SD card adapter.
Later that night, PetarP had an important posting- the use of a character device via Smartport. While it wasn’t covered in the presentation this facet of the project has large implications in terms of expanding the usability of the Fujinet (or other SP based projects) beyond just emulating disk (block) devices. In Petar’s words:
Petar Puskarich: We ran out of time at the end today, but if anyone caught it before the stream quit. I did have it telnet to bbs.fozztexx.com to his bbs using the network device over Smartport. A bit more of a dramatic show off than ISS app in my opinion but yes. This is the first network character device over smartport. Last night when I got that part working it was just amazing to me seeing it do something which I was told even by Apple years ago would be impossible. Even though they designed it as part of the protocol!
Saturday July 23
The discussion continued in the channel continued in the morning and through the day.
TCH began to organize a FujiNet workshop to implement a real-time clock device, getting the time from the FN and storing it in the Apple II. Josh (@inexorabletash) pointed to a project on a2stuff with a number interesting prodos drivers, including a clock device which could be used for this mini-project. James N pointed to a chapter of the book Apple ProDOS Advanced Features For Programmers that dealt with clock devices. Clearly an important driver for Apple users.
Moz published the hardware design for the Apple II Fujinet! With that release people are free to pull it and start building their own (proto) boards. This follows from the open principals of the Fujinet project. Everything we do it open and free to use for all users.
SpeedD408 showed up and reported that he had a Fujinet Rev0 board working with a real LIRON card. Yellowstone continues to be an issue, as Petar confirmed:
Petar Puskarich: That is my experience as well, if you have a LIRON use it. BUT all the other permutations do work except the Yellowstone, and even at that it has issues with other Smartport devices to begin with working consistently. But the SSC and Grappler+ solutions are working in my testing so far as well.
Sunday July 24
Kansasfest was winding down and so there wasn’t much discussion today (many people had jumped over to the FujiNet discord – see below) however there was one amazing post from TCH/Moz- the IDC20->DB19 connector from Moz was completed and shown plugged into the back of an Apple II. This is an amazing development as now the FujiNet team (and future vendors for the boards) can print and create their own DB19 connectors for the FujiNet. This was a particular annoying issue as obtaining DB19 connectors is very difficult due to lack of any major manufacturing of them. Even though they were used as floppy connectors for Apple, Amiga and Atari devices there are no current modern systems using this connector.
I’ll leave you with a nice quote from piranger that encapsulates the ethos of the Fujinet project. Statements like this are proof that the project is having an impact and bringing together these systems. It’s also allowing people to more fully use and play with the systems with less investment of time and energy…
piranger: Hung out with a buddy of mine this weekend who had an Atari800 as a kid. We both got Atari800’s and fujinets last year and had a blast. I’ve been sending him and some other friends Kansasfest updates on a private discord and he mentioned yesterday that he would like to explore the Apple //e.; who didn’t want an Apple2 back in the 80’s, right? So when I told him that Fujinet Apple rev0 is out now for developers with general consumer revs coming probably by end of the year he got very excited. So the Fujinet strategy of bringing together vintage 8bit computing communities from across many platforms is being realized.
General
A whole lot of people hopped onto the server from Kansasfest! Welcome to you all and I hope that your added participation enables the team to bring FujiNet to Apple even sooner than we expected. There was a lot of discussion going on in the Apple II channel as people showed up and lots more devices are getting tested with the Rev0 boards.
Platforms
ADAM
ADAM is stable, there are no new nor any bugs on this platform. Some discussion with Caleb227 about using FujiNet to connect to BBS and some good text sizing in columns for optimum reading.
Atari8
Some issues building the latest fw for Atari target- the intro of the Apple board has a new set of PINDEFS – definitions for the pins on each platform’s FN board- and the if people don’t update the ini (build) file in PlatformIO they will get errors on master now. Rory McMahon got that squared away and was looking for some Midnight Commander clones (DirOpus for you Amiga fans) for the Atari. There is a nice program in SDX that fits the bill: SDX Commander.
Atari16
sjfroos talked with moz about using the new DB19 connector moz has built for the Atari. It should work as long as the Atari16 board goes to IDC20 on its output.
sjfroos: I came as far as I can send bytes to the esp32 and ack them by pulling the IRQ low.
Apple II
Ron Klein continues to push on Apple FN usage with new disk images, GS/oS testing (more good news on this at the end) and A2OS tests. Using the webui to mount images (due to file travesal bug in CONFIG) is a slow but solid way to mount images for the FN.
GSOS continued to be an issue until till the end of the week when there was a solition and fix from robj (creator of the SmartPort Compact Flash Adapter). The history of FN Apple II support traces itself back to robj’s project which documented the SmartPort protocol as he build out the CF adapter. From this the SmartportSD project was created by Katherine Stark. JeffP used this code as the basis of his initial Smartport support in FujiNet. So it is very fitting that robj himself is helping FujiNet and has fixed the issue with GSOS booting.
robj: that gap between ACK and REQ is just over 1.6ms. Seems the GS can take its time when getting ready to receive the data packet. I see the time to wait for REQ is currently set to 1ms, I bumped it out to 4ms and its working much better for me now booting up gsos. gsos takes quite awhile to boot up over sp with all those debug messages!
Then Ron Klein was able to boot into GSOS (booting from Fujinet itself).
Ron Klein:: First successful boot into GS OS 6.0.4 with FujiNet (for me)!
Ron Klein: Thanks, @robj – your suggested change seems to work!
Ron Klein: The boot process is much slower than booting from my MDT (to be expected).
Ron Klein: I also see that the boot volume icon toggles back and forth like it’s online/offline, but I can still browse it.
Ron Klein: Either way, this is a big step forward it seems.
Robj also announced he posted the Apple III Prodos 1.0 launcher!
jeffmazur had a weird issue with SD card not being read by the FujiNet Apple board. Lots of troubleshooting, multiple cards tried and still the FN couldn’t write out its config to cards.
16:54:59.341 > Fuji cmd: WRITE DEVICE SLOTSfnConfig::save 16:54:59.341 > SPIFFS Config Storage: Enabled. Saving config to SPIFFS 16:54:59.341 > fnConfig::save wrote 805 bytes 16:54:59.341 > Attemptiong config copy to SD 16:54:59.341 > copy_file "/fnconfig.ini" -> "/fnconfig.ini" 16:54:59.341 > fopen = ok 16:54:59.341 > E (17067) sdmmc_cmd: sdmmc_write_sectors_dma: sdmmc_send_cmd returned 0x108 16:54:59.341 > E (17067) diskio_sdmmc: sdmmc_write_blocks failed (264) 16:54:59.341 > copy_file copied 0 bytes 16:54:59.341 > Failed to copy config to SD
JeffP presented Apple II FujiNet at Kansasfest: there is a special section at the top of this weeks post about that. Then a lot of people popped into the channel and things got rolling.
inexorabletash posted about a2d – the Apple II Desktop. A ProDOS GUI that RonK tested to work with FujiNet. Writing a Desk Accessory for a2d to configure the FujiNet would be an interesting bit of code, if someone is up to try it.
ppuskari commented that there is work needed to get FujiNet coexisting with the CFFA3000. It’s a card that provides SCSI support via Smartport for IIGS.
ppuskari Just wanted to add in that I spend probably 2 hours tonight trying all sorts of Fujinet configuration settings options permutations from the web interface as well as tweaking stuff on the CFFA3000 and nope no cigar. Just doesn’t seem to work. But I do see that the Fujinet does start to try to mount at the top of the CFFA3000 Smartport reserved drive list. IE if I set the maximum number of sp drives to 4 then fujinet tries to mount on .dev5 or if I set 16 then it tried .17 but to GSOS they are all corrupted readonly volumes and never mounts them. I did get lucky twice where the boot config image mounted as device 2 when cffa was limited to it’s 1 device only declared. The image mounted and was readable but only ONCE then it unmounted and would not do anything right after that. So now I’m trying to go back to a scsi controller and see if that allows me to get fuji net on the GS smartport volumes mounted.
RonKlien wanted to help further with his scope. Since moz designed the Rev0 board with all interesting pins exposed to debug its a simple matter to probe out the signals. TCH and JeffP helped Ron get some traces setup to look at while GS/oS was booting.
Thom Cherryhomes: the two most important variables when setting up a trace, are the trace time, and the trace rate.
Thom Cherryhomes: the trace time measured in # of samples
Thom Cherryhomes: and the trace rate, which is measured in frequency.
Thom Cherryhomes: You should sample at four times the highest frequency. since the smartport runs at 250kbps, you need at least 1MHz sample rate.
robj, tch continued to try and debug the GSOS loading issues- thinking they related to unsupported Smartport commands that GSOS may be issuing to the Fujinet.
On Sunday things seemed to wobble out of control. TCH couldn’t get his FN to boot CONFIG on his IIC+, moz had issues with ESP32 dev kits not working the board- chasing resistor issues while others looked at software issues.
The IIc and IIc+ handle smartport devices differently (this board works with JeffP’s IIc, while tch had no boot on the +).
jeffmazur: My internal drive is disconnected and I have the same issue as @Thom Cherryhomes
jeffmazur: What’s different on the SP connection between the //c and //c+?
jeffmazur: Other than the //c enumerates Drives 81-85 while the //c+ does 82-86.
robj: I seem to remember that the IIc+ has some sort of firmware thing limiting it to three external SP devices. I’m sure this is what @Thom Cherryhomes was battling when trying to work out the device enumeration with the IIc+.
robj: It might be worth trying for the IIc+ limiting the devices on the fujinet to three and see how it behaves.
ppuskari: I will say that the fujinet Apple 0 does NOT like playing on a IIgs with the Apple 800k 3.5″ (non unidisk) connected first and then hanging off the daisy chain. Causes the 3.5″ drive to just spin but not read anythign.
It was here that robj pulled a nice capture and the timing issue started to look like it was the issue.
robj: I see the time to wait for REQ is currently set to 1ms, I bumped it out to 4ms and its working much better for me now booting up gsos.
A short while later RonK confirmed and was up and going with GSOS booting from Fujinet. Next will be to figure out the timing issue with GSOS booting from something like a MDT card (with DMA access the MDT card is much faster than the Fujinet).
Lynx
mozzwald has fixed his new power chip and has it working on the Lynx! Soon issues with AA will be a thing of the past.
I got my Lynx card in and now w/ the Lynx Fujinet I’m ready to play some ComLynx games. There was too much Apple stuff going on however to setup any game time.
Commodore
idolpx reports good progress in his final push to incorporate Meatloaf with the Fujinet in the IEC branch. More to come on that soon I hope.
idolpx: things are looking good…. fingers crossed.
idolpx: most of the kinks seem to be worked out. tweaking now. 🙂
…
idolpx: I did try it on a Vic-20 and it worked same as the 64 so that’s good news. 🙂
ZX-Spectrum
It’s been mercifully quiet here (this posting is large with all the Apple news….) as thweasel and ThatOldNerd made one huge leap- moving to PlatformIO and leaving Arduino sketches behind!
That Old Nerd: Thank you. I have the IDE installed, and am hoping to get started this weekend.
TON is also getting a Fujinet for his Atari!
Projects
GSOS
A lot was happening in this channel as well as in the Apple II channel. robj found a subtle bug in Fujinet and had a fix…
robj: Looks like a timing hickup happens. Then the gs asks for that block again (03a7), but the Fujinet sends block 03a8 incorrectly
robj: @Thom Cherryhomes @Jeff Piepmeier this is odd, is it something to do with the tfns caching?
robj: ahh, not caching, but it was a seek optimisation. There is a subtle bug in there. If a read error occurs and the previous block that was successfully sent is the one before. Then the last_block_num variable is not touched. If you then retry the block that failed, the block_num will be equal to the last one + one, so no file seek is done. but the successful file read for the previous attempt has already moved the file ptr along.
Wrapup
Another exciting week for Apple II Fujinet. The presentation at Kansasfest has introduced a number of Apple II enthusiasts exactly when the FujiNet project needs them for this final push from prototype to retail board. With the end in sight for Apple II the third big platform is coming into view: Commodore 64. Some people are planning to have at least a table at VCF MidWest for Fujinet, this is the next big show where we’ll see FujiNet in action in front of a lot of interested people. Stay tuned.