QXL Networking

Nagging hardware related question? Post here!
Derek_Stewart
Font of All Knowledge
Posts: 4058
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

QXL Networking

Post by Derek_Stewart »

Hi,

I am having problems connecting a QXL 2B running at 25Mhz on the QL Network.

Other QL and Q68 can talk to each other but the QXL is refusing to access its resources.

I configured the QXL 2B with SMSQ/E v3.38 set Network Station to 1 and started the FSERVE network file server.

The connecting QL, Tetroid Trump Card, with Minerva v1.98, Toolkit 2 set to Net Station 2.

Typing, DIR n1_WIN1_ gives a network aborted error message.

I wonder if the QXL 2B running at 25Mhz is too fast for the QL Network?

I have in the past, had a QXL 1 with 20 Mhz clock connects okay to yhe QL Network. Would slowing the QXL2B down to 20Mhz make a difference?


Regards,

Derek
martyn_hill
Aurora
Posts: 954
Joined: Sat Oct 25, 2014 9:53 am

Re: QXL Networking

Post by martyn_hill »

Hi Derek!

With the QXL II that I purchased from you some years ago, I found it necessary to adjust the Timing Constants by about -5% their default values to get a reliable connection with my range of other QLNET connected devices.

When I'm back in London around Christmas, I can send you a simple SBasic procedure to adjust the TCs accordingly.

Whilst it may be necessary to find slightly different values for your QXL (mine runs at 20MHz), it's absolutely doable.

Don't give up :-)


Derek_Stewart
Font of All Knowledge
Posts: 4058
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QXL Networking

Post by Derek_Stewart »

Hi Martyn,

Thanks for the information, I am a little disappointed that SMSQ/E for the QXL does not do the timmings automatically, like the Q68, which runs at 40Mhz.


Regards,

Derek
martyn_hill
Aurora
Posts: 954
Joined: Sat Oct 25, 2014 9:53 am

Re: QXL Networking

Post by martyn_hill »

Hi again Derek

In fact, SMSQe on the QXL does attempt to dynamically determine the correct Timing Constants (unlike, the 'fixed-clock' NET driver variants used in the GC/SGC and the Q68, which I based directly off the SGC ND driver code) but it relies on the correct determination of the QXL clock speed which itself is calculated by a small routine that forms part of the SMSQe start-up sequence (and then posted in a QXL specific system-variable.)

It is this clock-speed calculation that I've found to be a bit flaky - at least on my QXL II - IIRC, my QXL reported 19MHz rather than 20MHz, and so it was necessary to manually tweak the Timing Constants after boot-up.

I simply update the TCs in my boot programme, after I empirically determined the correct adjustments. I'll share them here once back at the correct laptop this weekend.


martyn_hill
Aurora
Posts: 954
Joined: Sat Oct 25, 2014 9:53 am

Re: QXL Networking

Post by martyn_hill »

Hi again Derek!

Attached is a zip archive containing a short SBasic procedure adjQXLNetTCs that can be used to manually adjust the NET Timing-constants if SMSQe is incorrectly detecting your QXL CPU clock speed (in smsq_qxl_speed_asm)

To know if this is the cause of the networking issue with your QXL card, compare the output of PEEK_W(HEX('0380')) with the CPU clock that you expect (25). If the PEEK returns a different value, then the Timing-constants will have been miscalculated at boot-time and the attached procedure can be used to correct them to suit your actual clock-speed.

On my QXL II for example, the above PEEK returns 19, whereas the CPU clock is actually 20MHz. I use the procedure in my QXL Boot program.

Note: In order to find the NET device definition-block in SMSQe (where the active Timing-constants are stored) you first need to find the base address of an open NET channel. The function NET_GETCTAB relies on a custom extension CHADDR, based off of SNG's CHBASE (from DIY-Toolkit Vol-Q) - also provided in the zip archive.

Let me know if you have any questions and how you get on.
Attachments
QXL_NET_TC.zip
QXL NET Timing-constants Adjuster
(2.3 KiB) Downloaded 40 times


Derek_Stewart
Font of All Knowledge
Posts: 4058
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QXL Networking

Post by Derek_Stewart »

HI Martyn,

Thank you for the the timming software I will give it a go on my QXLII which I running at 20Mhz.

The Altera chips, I fitted on the latest QXL boards are capable of running at 50Mhz clock speed, which in the 68040 is 25Mhz or half the QXL board clock speed.

Interestingly enough, if a 68060RC50 running at 50Mhz, were used, the QXL, the CPU would run at 50Mhz or full clock speed.

I have he PCBs to make 2 68060 adapters, but not built. Whether or not this would actually work with a 68040 to 68060 adpater, I am not sure, maybe a problem with the CPU initialisation. But the Q60 worked OK, that that was a better design...


Regards,

Derek
napsternds
Chuggy Microdrive
Posts: 59
Joined: Tue Jan 26, 2021 11:04 am

Re: QXL Networking

Post by napsternds »

martyn_hill wrote: Tue Dec 27, 2022 2:08 pm Attached is a zip archive containing a short SBasic procedure adjQXLNetTCs that can be used to manually adjust the NET Timing-constants if SMSQe is incorrectly detecting your QXL CPU clock speed (in smsq_qxl_speed_asm)

To know if this is the cause of the networking issue with your QXL card, compare the output of PEEK_W(HEX('0380')) with the CPU clock that you expect (25).

Let me know if you have any questions and how you get on.
Martyn,

I purchased a QXL 2 card from Derek a few weeks ago, and I was running into the very same issue. I have just used your procedure, and it has worked great at the first try.

Just for the record, PEEK_W(HEX('0380')) returned 53, instead of the expected 25.

I run then the QXL NET TC procedure, it reported:
"QXL CPU clock: 25Mhz (calc. 53Mhz)
NET Timing Constants have been updated."
and then QLNet worked OK

Thank you so much!
Fede


martyn_hill
Aurora
Posts: 954
Joined: Sat Oct 25, 2014 9:53 am

Re: QXL Networking

Post by martyn_hill »

Hi Derek!
Derek_Stewart wrote: Tue Dec 27, 2022 3:01 pm Thank you for the the timming software I will give it a go on my QXLII which I running at 20Mhz.
You're welcome. If the actual clock speed is 20MHz, please adjust the parameter to the procedure from '25' to '20'.

Good luck!


martyn_hill
Aurora
Posts: 954
Joined: Sat Oct 25, 2014 9:53 am

Re: QXL Networking

Post by martyn_hill »

Hi Fede!
napsternds wrote: Tue Dec 27, 2022 3:57 pm I purchased a QXL 2 card from Derek a few weeks ago, and I was running into the very same issue. I have just used your procedure, and it has worked great at the first try.
Thanks for the feedback - glad it worked for you!
napsternds wrote: Tue Dec 27, 2022 3:57 pmJust for the record, PEEK_W(HEX('0380')) returned 53, instead of the expected 25.
Curious how the speed detection could be so out in your case - we might expect a slight deviation, but double seems odd to me...

Enjoy networking!


Derek_Stewart
Font of All Knowledge
Posts: 4058
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: QXL Networking

Post by Derek_Stewart »

HI Martyn,

The QXL II+ cards, I have are using a 68RC040RC40M CPU from a Q40. Which has MMU and FPU, runs at 40Mhz.

The QXL II+ clock oscillator, is 50Mhz, which runs the QLX board at 50Mhz, but the design of the 68040 reduces the clock speed by 50% to 25Mhz.

The programmed Altera PLD Glue Chip is running in a Turbo mode and is at is maimum speec of 50Mhz, so really I think the this is the maximum clock speed that the QXL can do. Though there are reports of the QXL running at 80Mhz, with cooling on the Altera Glue chip and CPU, which made the QL Network unsable.

Does the corrected QXL speed value, does the corrected value affect the speed of the QXL?

Also if the the QXl was pushed over its maximum speed would corrected values make the QXL access the QL Network when running at say... 80-100Mhz (a silly idea I know, but just thinking aloud)


Regards,

Derek
Post Reply