Econet for Atom

emulators, hardware and classic software for atom + system machines
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Econet for Atom

Post by KenLowe »

Now that I've got my Atom running reliably with my YARBB and Noise Killer, focus has returned to getting my combined AtoMMC / Econet adaptor fully functional. There's a bit of historical discussion about the board in this thread:

viewtopic.php?p=360674#p360674

Currently the AtoMMC part of it is working nicely, but a bit more effort is going to be required to get the Econet part working. Specifically,
  • The onboard CPLD will need to be updated to address the Econet hardware and read the Station ID from the DIP switches. Currently, only the AtoMMC address decoding is implemented.
  • The Atom NFS ROM will need to be updated to reflect the new base address of the Econet hardware.
This thread is to chart the development of this element of the project, which Hoglet has kindly offered to help me with.
User avatar
roland
Posts: 5148
Joined: Thu Aug 29, 2013 9:29 pm
Location: Born (NL)
Contact:

Re: Econet for Atom

Post by roland »

In the near future I will be interested in the patched NFS ROM for the Atom. Can you write a (small) basic program that asks for a base address and then it patches the ROM? Yes .... the Econet virus hit me :lol: and no, I am not thinking about an AENT. For now .... :mrgreen:
FPGAtom: 512 KB RAM, Real Time Clock and 64 colours
MAN WOMAN :shock:
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

Thanks Ken for starting this thread, and for sending me one of these very nice boards:
IMG_2612.JPG
This is a two board stack, with an ADF-10 (Master Econet) adapter on top, and a combined AtoMMC/Econet board underneath, which looks like:
AtoMMC_Econet.jpg
The changes to the CPLD were pretty quick to make: 057c29a6 (github)

It look me a rather longer to get an Econet file server up and running!

My test setup currently looks like this:
IMG_2611.JPG
Station 254:
- a Master with PiTubeDirect and Pi1MHz/BeebSCSI
- running Level 3 fileserver (FS-092) on Co Pro 0
- with the Atom Software Archive BeebSCSI disc image

Station 170:
- an Atom with YARRBv1, Noise Killer and Ken's AtoMMC/Econet board
- the modified (*) Atom Econet ROM v 3.50 soft-loaded to #A000

Econet Clock:
- running at 200KHz

The source for the Atom Econet ROM is here.

The patches I've needed to make so far are:
- change register addresses from B400+N to B408+N
- patch the initialization code at #A000 so it can be called with LINK rather than IRQ

This is where I've got to so far...
capture34.png
capture24.png
(the two pokes are the patch mentioned above, replacing a PLA:RTI with NOP:RTS)

I'm even able to boot the Atom Software Archive and then run a game!

The main issue we need to work through is initialization, as the ADF10 Master Econet board can't generate an interrupt on BREAK. And even if it could, I think there would be a conflict with AtoMMC at #E000 trying to initialize, which would win. It would be nice to figure out a way to choose (maybe with a key pressed during BREAK) to boot to Econet rather than AtoMMC.

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

Wow, what a great start! I'll need to figure out where to grab the NFS ROM from, and then how to load it into YARBB. I've got a lot of learning to do with this Atom yet!
hoglet wrote: Tue Dec 20, 2022 7:13 pm The main issue we need to work through is initialization, as the ADF10 Master Econet board can't generate an interrupt on BREAK. And even if it could, I think there would be a conflict with AtoMMC at #E000 trying to initialize, which would win. It would be nice to figure out a way to choose (maybe with a key pressed during BREAK) to boot to Econet rather than AtoMMC.
Having a look at the Atom Econet schematic:

https://www.4corn.co.uk/archive/diagram ... %20PCB.jpg

and referring back to this post:

viewtopic.php?p=356415#p356415

I note that the transistor is actually tied into the DTR pin of the 68B54. If I were to blindly replicate this on the combined AtoMMC / Econet system, it would really need to be added to the ADF-10 board and not the AtoMMC / Econet board. Does anyone know why the transistor base is tied into the DTR line? Is that effectively some form of one-shot being used to initialise the Econet on BREAK?

Having said that, I note you comments about an Econet interrupt causing conflict with AtoMMC, so possibly no need to add this transistor circuit
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

KenLowe wrote: Tue Dec 20, 2022 9:24 pm Wow, what a great start! I'll need to figure out where to grab the NFS ROM from, and then how to load it into YARBB. I've got a lot of learning to do with this Atom yet!
Here's a copy of the modified Atom Econet 3.50 ROM (with an AtoMMC header on the front):
ECO350.zip
(3.15 KiB) Downloaded 23 times
Unzip it and the copy ECO350 to the root of your AtoMMC SD Card.

To load it, follow the commands in the screen shot above.

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

Brilliant. Success (well, almost):
Initial setup
Initial setup
Changed station ID and plugged in Econet cable
Changed station ID and plugged in Econet cable
I'm trying to communicate with my PiEconetBridge, but I've not really tried to figure out why it's not replying yet. I can see the LEDs flickering on my bridge, indicating some traffic on the wire though, so it's doing something! I'll need to open up a console to the bridge and have a look at the logs.
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

So the bridge is definitely picking up traffic. But I'm not entirely sure if it's responding. If it is responding, then the Atom is not receiving the messages reliably:

Code: Select all

pi@raspberrypi:~/PiEconetBridge/utilities $ ./econet-hpbridge -zz -piloO -n16

<---SNIP--->

[+     134.742004] tid     736 PACKET  : Wire       0.254 from   0. 21 P:&00 C:&88 (i) Type IQU Seq 0x00004004 Length 0x004E addr 0x76affd2c
                   00000000: 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 4E 0D %..I.AM.254.KEN.
[+     134.742004] tid     736 PACKET  : Local      1.254 from   1. 21 P:&00 C:&88 (o) Type IQU Seq 0x00004004 Length 0x004E addr 0x75200780
                   00000000: 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 4E 0D %..I.AM.254.KEN.
[+     134.742996] tid     738 PACKET  : Wire       1. 21 from   1.254 P:&00 C:&88 (o) Type IRP Seq 0x00004004 Length 0x0004 addr 0x73605b68
                   00000000: EE EE 02 00                                     ....
[+     134.744003] tid     736 PACKET  : Wire       0. 21 from   0.254 P:&00 C:&88 (O) Type IRP Seq 0x00004004 Length 0x0004 addr 0x76af7c90
                   00000000: EE EE 02 00                                     ....
[+     134.809998] tid     736 PACKET  : Wire       0.254 from   0. 21 P:&00 C:&88 (i) Type IQU Seq 0x00004008 Length 0x004E addr 0x76affd2c
                   00000000: 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 4E 0D %..I.AM.254.KEN.
[+     134.811005] tid     736 PACKET  : Local      1.254 from   1. 21 P:&00 C:&88 (o) Type IQU Seq 0x00004008 Length 0x004E addr 0x752009d8
                   00000000: 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 4E 0D %..I.AM.254.KEN.
[+     134.811005] tid     738 PACKET  : Wire       1. 21 from   1.254 P:&00 C:&88 (o) Type IRP Seq 0x00004008 Length 0x0004 addr 0x73605b98
                   00000000: EE EE 02 00                                     ....
[+     134.811996] tid     736 PACKET  : Wire       0. 21 from   0.254 P:&00 C:&88 (O) Type IRP Seq 0x00004008 Length 0x0004 addr 0x76af7c90
                   00000000: EE EE 02 00                                     ....
[+     134.878998] tid     736 PACKET  : Wire       0.254 from   0. 21 P:&00 C:&88 (i) Type IQU Seq 0x0000400C Length 0x004E addr 0x76affd2c
                   00000000: 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 4E 0D %..I.AM.254.KEN.
[+     134.878998] tid     736 PACKET  : Local      1.254 from   1. 21 P:&00 C:&88 (o) Type IQU Seq 0x0000400C Length 0x004E addr 0x75200b58
                   00000000: 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 4E 0D %..I.AM.254.KEN.
[+     134.878998] tid     738 PACKET  : Wire       1. 21 from   1.254 P:&00 C:&88 (o) Type IRP Seq 0x0000400C Length 0x0004 addr 0x73605bb0
                   00000000: EE EE 02 00                                     ....
[+     134.931000] tid     736 PACKET  : Wire       0. 21 from   0.254 P:&00 C:&88 (O) Type IRP Seq 0x0000400C Length 0x0004 addr 0x76af7c90
                   00000000: EE EE 02 00                                     ....
[+     134.947006] tid     736 PACKET  : Wire       0.254 from   0. 21 P:&00 C:&88 (i) Type IQU Seq 0x00004010 Length 0x004E addr 0x76affd2c
                   00000000: 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 4E 0D %..I.AM.254.KEN.
[+     134.947006] tid     736 PACKET  : Local      1.254 from   1. 21 P:&00 C:&88 (o) Type IQU Seq 0x00004010 Length 0x004E addr 0x75200c48
                   00000000: 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 4E 0D %..I.AM.254.KEN.
[+     134.947006] tid     738 PACKET  : Wire       1. 21 from   1.254 P:&00 C:&88 (o) Type IRP Seq 0x00004010 Length 0x0004 addr 0x73605bc8
                   00000000: EE EE 02 00                                     ....
[+     134.947998] tid     736 PACKET  : Wire       0. 21 from   0.254 P:&00 C:&88 (O) Type IRP Seq 0x00004010 Length 0x0004 addr 0x76af7c90
                   00000000: EE EE 02 00                                     ....
[+     135.014008] tid     736 PACKET  : Wire       0.254 from   0. 21 P:&99 C:&80 (i) Type DAT Seq 0x00004014 Length 0x0050 addr 0x76affd2c
                   00000000: 88 00 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 ..%..I.AM.254.KE
[+     135.014008] tid     736 FSLIST  :            1.254 Marked as fileserver
[+     135.014999] tid     736 PACKET  : Local      1.254 from   1. 21 P:&99 C:&80 (o) Type DAT Seq 0x00004014 Length 0x0050 addr 0x75200d38
                   00000000: 88 00 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 ..%..I.AM.254.KE
[+     135.014999] tid     738 PACKET  : Local      0.254 from   0. 21 P:&99 C:&80 (O) Type DAT Seq 0x00004014 Length 0x0050 addr 0x75200d38
                   00000000: 88 00 25 01 DC 49 20 41 4D 20 32 35 34 20 4B 45 ..%..I.AM.254.KE
[+     135.016998] tid     738 FS      :                              Interlock opened internal handle 0, mode 1. Readers = 1, Writers = 0, path /home/pi/econetfs/0Skidog-01/KEN
[+     135.016998] tid     738 FS      :                              Interlock opened internal dup handle 0, mode 1. Readers = 2, Writers = 0, path /home/pi/econetfs/0Skidog-01/KEN
[+     135.018005] tid     738 FS      :                              Interlock opened internal handle 1, mode 1. Readers = 1, Writers = 0, path /home/pi/econetfs/0Skidog-01/Library
[+     135.018005] tid     738 FS      :                              from   0. 21 Login as KEN       , index 0, id 1, disc 0, URD $.KEN, CWD $.KEN, LIB $.Library, priv 0x01
[+     135.018005] tid     738 PACKET  : Wire       1. 21 from   1.254 P:&88 C:&80 (o) Type DAT Seq 0x00004008 Length 0x0006 addr 0x73609550
                   00000000: 05 00 01 02 03 00                               ......
And this is the Atom trying to log into a different PiFS on a different network:

Code: Select all

pi@raspberrypi:~/PiEconetBridge/utilities $ ./econet-hpbridge -zz -piloO -n16

<---SNIP--->

[+      55.313999] tid     804 PACKET  : Wire       0.254 from   0. 21 P:&99 C:&80 (i) Type DAT Seq 0x00004004 Length 0x0050 addr 0xb6b5cd2c
                   00000000: 88 00 25 01 DC 49 20 41 4D 20 53 59 53 54 0D 0D ..%..I.AM.SYST..
[+      55.314999] tid     804 FSLIST  :            2.254 Marked as fileserver
[+      55.314999] tid     804 PACKET  : Local      2.254 from   2. 21 P:&99 C:&80 (o) Type DAT Seq 0x00004004 Length 0x0050 addr 0xb5200718
                   00000000: 88 00 25 01 DC 49 20 41 4D 20 53 59 53 54 0D 0D ..%..I.AM.SYST..
[+      55.314999] tid     806 PACKET  : Local      0.254 from   0. 21 P:&99 C:&80 (O) Type DAT Seq 0x00004004 Length 0x0050 addr 0xb5200718
                   00000000: 88 00 25 01 DC 49 20 41 4D 20 53 59 53 54 0D 0D ..%..I.AM.SYST..
[+      55.316002] tid     806 FS      :                              Interlock opened internal handle 0, mode 1. Readers = 1, Writers = 0, path /home/pi/econetfs/0Skidog01
[+      55.316002] tid     806 FS      :                              Interlock opened internal dup handle 0, mode 1. Readers = 2, Writers = 0, path /home/pi/econetfs/0Skidog01
[+      55.316002] tid     806 FS      :                              from   0. 21 Login attempt - cannot find lib dir $.Library
[+      55.316002] tid     806 FS      :                              Interlock opened internal dup handle 0, mode 1. Readers = 3, Writers = 0, path /home/pi/econetfs/0Skidog01
[+      55.317001] tid     806 FS      :                              from   0. 21 Login as SYST      , index 0, id 0, disc 0, URD $, CWD $, LIB $.Library, priv 0x80
[+      55.317001] tid     806 PACKET  : Wire       2. 21 from   2.254 P:&88 C:&80 (o) Type DAT Seq 0x00004008 Length 0x0006 addr 0xb4809fa8
                   00000000: 05 00 01 02 03 00                               ......
Last edited by KenLowe on Wed Dec 21, 2022 12:45 am, edited 3 times in total.
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

Not too sure what's going wrong here. I've just fired up my L3FS (I've tried both v1.24 & v1.26) and I'm seeing similar results to my PiFS. The file server is seeing the login request, but the Atom is still reporting 'No Reply'.

Similar to hoglet, I'm also running a 200kHz clock (5us period, 1us mark). I've tried slowing it down to 6us period, 1us (and also 3us) mark but it hasn't made any difference.

I've also tried a different ADF-10 module in my board, but that didn't make any difference either. I've just tested them, and both ADF-10 modules work fine in my Master :?.
Last edited by KenLowe on Wed Dec 21, 2022 8:57 am, edited 1 time in total.
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

KenLowe wrote: Tue Dec 20, 2022 11:44 pm Not too sure what's going wrong here. I've just fired up my L3FS (I've tried both v1.24 & v1.26) and I'm seeing similar results to my PiFS. The file server is seeing the login request, but the Atom is still reporting 'No Reply'.
I am using an older version of L3FS (version 0.92) - I wonder if Atom support was dropped (or bugged) in later versions?

If you want to quickly try this, it's all included in the AtomSoftwareArchive BeebSCSI image (which also contains the AFS0 volume):
https://github.com/hoglet67/AtomSoftwar ... BSCSI0.zip

All you need to do is replace your BeebSCSI0/scsi0.dat file with this one, enable the 6502 Co Pro, then run *FS3-092.

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

hoglet wrote: Wed Dec 21, 2022 7:48 am I am using an older version of L3FS (version 0.92) - I wonder if Atom support was dropped (or bugged) in later versions?
Unfortunately, I'm getting the very same 'No Reply' message with your v0.92.

Do you know if NFS uses the 6522 in any way? I don't know the history of the 6522 that I've used in the Atom.
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

Quick thought...

Do I need to make link L3 for the Econet module IRQs?

If not, I'm really struggling to see why it's not working. I've belled out all the relevant signals between the PL8 connector and the 17 pin header on the ADF10 module. I've checked the connections between the DIN5 socket on the AtoMMC / Econet board and the ADF10 module. Everything seems to be in order. I've tested the ADF-10 module in my Master, and it's working fine.

The only other thing is that my L3FS is sitting on Station 251. I might change that to 254 to see if that makes any difference. I suspect not, given that I can see login attempts from my Atom on Station 251.
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

KenLowe wrote: Wed Dec 21, 2022 9:48 am Do I need to make link L3 for the Econet module IRQs?
Yes you do!
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

hoglet wrote: Wed Dec 21, 2022 10:06 am
KenLowe wrote: Wed Dec 21, 2022 9:48 am Do I need to make link L3 for the Econet module IRQs?
Yes you do!
Ok, but that then breaks AtoMMC. The Atom now hangs when I power it up. Do I have so switch to a different version of the AtoMMC ROM, and if so, how do I do that?
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

KenLowe wrote: Wed Dec 21, 2022 10:19 am Ok, but that then breaks AtoMMC. The Atom now hangs when I power it up. Do I have so switch to a different version of the AtoMMC ROM?
OK, you need to stop AtoMMC interrupting:
- Remove LK3
- Power on
- *CFG C0
- Power off
- Replace LK3

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

hoglet wrote: Wed Dec 21, 2022 10:21 am OK, you need to stop AtoMMC interrupting:
- Remove LK3
- Power on
- *CFG C0
- Power off
- Replace LK3
I knew I should have installed a switch where that link is!
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

I've just done that, but the machine still hung, so I've snipped the link again, and checked, and CFG is definitely set to C0.

I'll remake the link again, and try and figure out why its still locking up...
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

KenLowe wrote: Wed Dec 21, 2022 10:38 am I'll remake the link again, and try and figure out why its still locking up...
You need to fit a 2-pin header!

I suspect this is all due to the confusion/changes around what pin on the PIC drives IRQ.

This is complicated by:
- IRQ being asserted by the AtoMMC boot loader (when *CFG is set)
- IRQ begin released by the AtoMMC firmware

So all ideally the PCB, the boot loader and the firmware all need to be in agreement!

I'm not sure where your PIC originated from, or how you programmed the boot loader.

BTW I actually have the opposite problem - I don't think my AtoMMC ever asserts IRQ on your board, because I'm using the original 2.9 boot loader (where IRQ is attached to RC6 / pin 25).

If you do a *HELP what boot loader and firmware versions do you have?

It might be easier to bend out disconnect RA4 / pin 6 of the PIC - then you can be sure the PIC is not generating an interrupt.

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

Remade the link, and after a couple of presses of the BREAK key the command prompt appeared, along with the AtoMMC boot message :).

Reloaded, and repatched the NFS ROM, and...

It works!
Logged into my L3FS
Logged into my L3FS
I've even managed to load the MENU, and run a game from it! Next up, I'm going to try logging into my PiFS again...
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

hoglet wrote: Wed Dec 21, 2022 10:46 am I'm not sure where your PIC originated from, or how you programmed the boot loader.
My PIC arrived with my AtoMMC pre-programmed by SirMorris.
hoglet wrote: Wed Dec 21, 2022 10:46 am I don't think my AtoMMC ever asserts IRQ on your board, because I'm using the original 2.9 boot loader (where IRQ is attached to RC6 / pin 25).

If you do a *HELP what boot loader and firmware versions do you have?
I've got the same bootloader version 2.9. Firmware version is 3.0.
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

Glad you are making forward progress....

These PIC pinout changes are proving to be a real pain....

The problem is the old 2.9 boot loader (which is the one we both seem have) is designed for the V2 hardware. The following are not going to work on the V4 hardware:
- generating the IRQ to initialize the #A000 version (because in V4 IRQ moved from RC6 to RA4)
- updating the firmware (because on V3 and V4 MOSI/MISO are swapped so the card can't be read)

Where did your PIC come from exactly?

Have you managed to do a firmware update?

Charlie does seem to have a later 3.0 Boot Loader here:
https://github.com/charlierobson/atommc ... n/firmware

This looks for a differently named firmware file: atommcv3.bin

I wonder if Roland is using this version on his V4 boards?

It's definitely worth us getting the boot loader sorted and verify the firmware update process works before too many more of these boards exist.

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

hoglet wrote: Wed Dec 21, 2022 11:58 am Where did your PIC come from exactly?

Have you managed to do a firmware update?
I robbed the PIC from the AtoMMC card I purchased from SirMorris. This is the same PIC that we did firmware upgrades on earlier in the year.
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

KenLowe wrote: Wed Dec 21, 2022 12:10 pm I robbed the PIC from the AtoMMC card I purchased from SirMorris. This is the same PIC that we did firmware upgrades on earlier in the year.
That was the board that we called the V3 hardware wasn't it? (with the MISO/MOSI swap but not the IRQ change).

It must be running a custom boot loader that still happened to be called version 2.9.

Anyway, I've just managed to brick my PIC trying to load the V3.0 Boot Loader. Not sure I can easily recover from this....

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

hoglet wrote: Wed Dec 21, 2022 12:26 pm
KenLowe wrote: Wed Dec 21, 2022 12:10 pm I robbed the PIC from the AtoMMC card I purchased from SirMorris. This is the same PIC that we did firmware upgrades on earlier in the year.
That was the board that we called the V3 hardware wasn't it? (with the MISO/MOSI swap but not the IRQ change).
That's correct.
hoglet wrote: Wed Dec 21, 2022 12:26 pm Anyway, I've just managed to brick my PIC trying to load the V3.0 Boot Loader. Not sure I can easily recover from this....
That doesn't sound good. I'm not familiar with how these are meant to be programmed, but my TL866II claims to be able to program them if that would be of any help.
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

KenLowe wrote: Wed Dec 21, 2022 12:34 pm That doesn't sound good. I'm not familiar with how these are meant to be programmed, but my TL866II claims to be able to program them if that would be of any help.
So should my Genius G540 - I've managed it in the past - but it's a bit flaky!

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

Does anyone know if the Atom supports the Network.Station format for logging into a file server. For example:

Code: Select all

*I AM 2.254 KEN
I'm struggling to get this working, and get a 'Not Listening' error. If I then try:

Code: Select all

*I AM 254.254 KEN
This logs into my local file server, station number 254. In fact I can put any rubbish after the first 254 and before the user name, and it just seems get ignored:

Code: Select all

*I AM 254RUBBISH KEN
This will still log me into my local file server, station number 254.

Is there any decent documentation for the Atom Econet system?
User avatar
oss003
Posts: 3849
Joined: Tue Jul 14, 2009 12:57 pm
Location: Netherlands
Contact:

Re: Econet for Atom

Post by oss003 »

Hi Ken,

The Atom software is described in this manual.

Greetings
Kees
Attachments
Acorn_The_Econet_System_UG.pdf
(928.29 KiB) Downloaded 23 times
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

oss003 wrote: Wed Dec 21, 2022 2:22 pm Hi Ken,

The Atom software is described in this manual.

Greetings
Kees
Unfortunately, the relevant pages are missing from that manual :(.
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

KenLowe wrote: Wed Dec 21, 2022 2:26 pm Unfortunately, the relevant pages are missing from that manual :(.
Try this version:
https://archive.org/details/the-econet- ... ember-1982

Dave
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: Econet for Atom

Post by KenLowe »

hoglet wrote: Wed Dec 21, 2022 2:37 pm
KenLowe wrote: Wed Dec 21, 2022 2:26 pm Unfortunately, the relevant pages are missing from that manual :(.
Try this version:
https://archive.org/details/the-econet- ... ember-1982

Dave
Thanks. That has this missing pages. Unfortunately, it didn't really help. I still can't find anything that mentions if the Atom can talk to File Servers over a bridge.
User avatar
hoglet
Posts: 12664
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Econet for Atom

Post by hoglet »

I've eventually manged to recover my PIC....

The issue (which I always forget about) is the PIC Configuration area gets nobbled when you ERASE the PIC.

Here's what I ended up setting it to:
PIC_Config.png
So next, lets try to get the latest 3.0 Boot Loader and 3.0 Firmware from Charlie running.....

Charlie has published the sources for these in this repository, but I'm not aware of any official binary releases.

I've not tried these before, so I had a go at building them. I needed to do some hacking to the build script, because I don't have the ihexdump program. So I used the same process that I used for the 2.x firmware (a java program I wrote called pichextobin). They do pretty much the same thing - add a header with a magic number and checksum onto the firmware file, so the AtoMMC boot loader can tell it's legitimate.

For reference, here are the boot loader and firmware files that I build:
atommc_firmware_charlie.zip
(17.3 KiB) Downloaded 23 times
I programmed the boot loader (atommcv3-bl.hex) onto the PIC with a Genius G540 as follows:
- Select the Microchip PIC18F4525 device
- Erase
- Load atommcv3-bl.hex into the buffer (in Intel Hex format) with unused bytes set to 0xFF
- Set the Programming sequence to be just the Program step
- Program

I then manually set up the PIC Confuration data:
- Click the Config SET button and manually change the settings to match the screen shot above then click OK
- Press the ENCR/CONF/PRTE button to actually program the config

Then we can use the normal AtoMMC firmware update process to program the firmware file (atommcv3.bin):
- Put the PIC into the AtoMMC
- Copy atommcv3.bin onto a SMALL (<1GB) FAT16 formatted SD Card and put this into the AtoMMC
- Connect to the Atom and power up
- If all goes to plan, you should get a red light and a flashing green light for about 20 seconds as the boot loader programs the firmware
- The system will restart and you should have a working AtoMMC
capture36.png
Out of interest, I also tried various combinations of Boot Loader and Firmware
- 2.9 Boot Loader (hoglet) + 3.0 Firmware (hoglet) - works - but IRQ and Firmware Update broken - LOAD benchmark 13.75s
- 2.9 Boot Loader (hoglet) + 3.0 Firmware (charlie) - works - but IRQ and Firmware Update broken - LOAD benchmark 8.35s
- 3.0 Boot Loader (charlie) + 3.0 Firmware (hoglet) - NOT READY error when accessing SD Card
- 3.0 Boot Loader (charlie) + 3.0 Firmware (charlie) - works - LOAD benchmark 8.35s

Sorry this is so confusing - there are two different "3.0" firmware build (my hacky one and Charlie's). Charlie's is better for this hardware as it uses the PIC's SPI harware, which is possible because MOSI and MISO are now connected to the correct pins. That gives a pretty decent speed up. The benchmark above loads a total of ~120KB of data.

I don't fully understand the reason for the NOT READY error in one of the combinations above. I suspect the 3.0 Boot Loader leaving the PIC's SPI hardware enabled and attached to the pins, which means that when my firmware tries to bit bang the using PORTC this has no effect.

Anyway, I would suggest going forward we use Charlie's 3.0 boot loader and 3.0 firmware on this hardware, and I'll keep my repository just for the older AtoMMC 2.0

Dave
Post Reply

Return to “acorn atom and acorn system series”