• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

QuadraFPGA: HDMI for the 68040 PDS slot

Melkhior

Well-known member
Another drawback would be that only 1920x1080 is supported as a "true resolution", for every other resolution it will be windowed with an increasingly larger
Update on that: this particular limitation has been (somewhat) lifted. The QuadraFPGA (and NuBusFPGA, IIsiFPGA) now has the choice of two different Highly Desirable Macintosh Interface PHY (the part that generate the appropriate signals to the connector):

(a) the Litex-style one (written in Migen), which doesn't support audio output, now has support for 'truly' switchable resolution. The clock is reconfigured on-the-fly to generate the appropriate signal for the selected resolution (and it's up to the screen to decide what to do with it). Windowboxed is also available, so the list of resolution in the control panel is quite long :)

(b) the 'more standard-compliant' one (written in Verilog by a third-party, with a Migen wrapper), which does support an Audio output to the screen, still only has windowboxed resolutions. It's theoretically possible to adapt it to also reconfigure the signal to other resolution, but the standard restrict which resolutions are available and of those only 640x480 is standard for computer screens.
 

Jockelill

Well-known member
Update on that: this particular limitation has been (somewhat) lifted. The QuadraFPGA (and NuBusFPGA, IIsiFPGA) now has the choice of two different Highly Desirable Macintosh Interface PHY (the part that generate the appropriate signals to the connector):

(a) the Litex-style one (written in Migen), which doesn't support audio output, now has support for 'truly' switchable resolution. The clock is reconfigured on-the-fly to generate the appropriate signal for the selected resolution (and it's up to the screen to decide what to do with it). Windowboxed is also available, so the list of resolution in the control panel is quite long :)

(b) the 'more standard-compliant' one (written in Verilog by a third-party, with a Migen wrapper), which does support an Audio output to the screen, still only has windowboxed resolutions. It's theoretically possible to adapt it to also reconfigure the signal to other resolution, but the standard restrict which resolutions are available and of those only 640x480 is standard for computer screens.
WOHO!! Reference bitstreams updated?

W e l l DONE!! Really amazing work you're pulling off here :)!!
 

Melkhior

Well-known member
Ah, no worries :). No final fix for the not always centered picture :)?
No, the reset system needed between resolution / depth change isn't reliable and I haven't figured out why yet... so it still a matter of re-changing resolution/depth to force a reset :-(
 

mcayland

Member
Update on that: this particular limitation has been (somewhat) lifted. The QuadraFPGA (and NuBusFPGA, IIsiFPGA) now has the choice of two different Highly Desirable Macintosh Interface PHY (the part that generate the appropriate signals to the connector):

(a) the Litex-style one (written in Migen), which doesn't support audio output, now has support for 'truly' switchable resolution. The clock is reconfigured on-the-fly to generate the appropriate signal for the selected resolution (and it's up to the screen to decide what to do with it). Windowboxed is also available, so the list of resolution in the control panel is quite long :)

(b) the 'more standard-compliant' one (written in Verilog by a third-party, with a Migen wrapper), which does support an Audio output to the screen, still only has windowboxed resolutions. It's theoretically possible to adapt it to also reconfigure the signal to other resolution, but the standard restrict which resolutions are available and of those only 640x480 is standard for computer screens.

This sounds amazing! Have you got any screenshots to give an idea as to what the screen and Monitor Control Panel now look like with this latest update?
 

Melkhior

Well-known member
Have you got any screenshots to give an idea as to what the screen and Monitor Control Panel now look like with this latest update?
I'll try and post something later this week (if @Jockelill doesn't beat me to it ;-) ), but it's somewhat frustrating: MacOS (8.1 at least) seems to auto-generate the names in the list, so if you have the same resolution twice (once windowboxed, once 'hardware') then you get the same name twice. Which is not nice. I didn't investigate thoroughly though, so it might be possible to coerce it into using names like '1280x1024 (hw)' and '1280x1024 (wb)', but I haven't found how. If someone does, please tell me :)

An alternative solution would be to have a dedicated control panel to handle this kind of thing (and maybe allows control of acceleration, force soft-reset in case something goes haywire, ...), but I haven't done anything in that direction. Hardware is more fun, software looks too much like real work :)
 

Powerbase

Well-known member
Oooo, your own control panel with custom graphics (in the style of the time). Maybe a little rocket ship to signify acceleration.
 

eharmon

Well-known member
I'll try and post something later this week (if @Jockelill doesn't beat me to it ;-) ), but it's somewhat frustrating: MacOS (8.1 at least) seems to auto-generate the names in the list, so if you have the same resolution twice (once windowboxed, once 'hardware') then you get the same name twice. Which is not nice. I didn't investigate thoroughly though, so it might be possible to coerce it into using names like '1280x1024 (hw)' and '1280x1024 (wb)', but I haven't found how. If someone does, please tell me :)

An alternative solution would be to have a dedicated control panel to handle this kind of thing (and maybe allows control of acceleration, force soft-reset in case something goes haywire, ...), but I haven't done anything in that direction. Hardware is more fun, software looks too much like real work :)
Yes, that should be possible with the correct DeclROM definitions, if I remember correctly. Unfortunately it works differently pre-Display Manager 2.0, so it’s hard to make something that works earlier than 7.5.2 as well.
 

Melkhior

Well-known member
Yes, that should be possible with the correct DeclROM definitions, if I remember correctly. Unfortunately it works differently pre-Display Manager 2.0, so it’s hard to make something that works earlier than 7.5.2 as well.
Any pointers to the relevant documentation? There DeclROM isn't particularly well documented post-DCDMF3 and I can't find an explicit documentation of the Display Manager, let alone the ROM part of it.
(... some more googling...)
Apparently, from Develop 25 (March '96), you need the "Display Manager Development Kit" from the CD... That seems available, I'll have a look through that. Any other pointers welcome :)
 

Jockelill

Well-known member
Here are a few pics :)

I have this machine in my living room (pretty maxed out 650 with the QuadraFPGA, 328MB RAM, 8MB custom ROM and BlueScsi V2).

This is the panel:
IMG_9301.jpeg

Full screen HD:
IMG_9302.jpeg
Window 640x480
IMG_9303.jpeg
And finally native 800x600

IMG_9306.jpeg

The screen is a Huawei 3:2 28” (MateView). 3:2 format is a great compromise for retro games and modern computing! Can highly recommend it.
 

Melkhior

Well-known member
Is this the first time a 68K machine has supported 1920x1080?
Well, I'll be a pedant and claim the QuadraFPGA is the third time, following the NuBusFPGA and IIsiFPGA at first and second :) Although they are similar enough that they can probably all be counted as one and just want all three medals 'cause I'm greedy :)

More seriously, I don't remember any 68k-based system running a Full HD color screen, let alone at full 24-bits color (there were specialized B&W/low depth displays for medical imaging and the like at quite high resolution, though, but usually on 4x3 or even 1x1 aspect ratio). I don't think either the amount of RAM or the display size became available until the PCI PowerMac era at the earliest - and for the x500 PPC, maybe only with "backported" PCI graphics. The SGI 1600SW screen was introduced in '98, and at the time that was a very desirable monitor at 1600x1024. I don't remember Full HD LCD being available before the turn of the century, by which time the 68k were hopelessly obsolete.

For the really ambitious out there, 7-series XilinxAMD FPGA have high-performance I/Os that theoretically can go fast enough to output at 4K (though they can't do TMDS so some external support is required, or one would need to implement a DisplayPort PHY), other brands probably have similar technologies... so the *FPGA can be bested!

Edit: a DisplayPort PHY that has support for Artix-7
 
Last edited:

Melkhior

Well-known member
the VillageTronic MacPicasso 340 (aka the Sonnet Sonata Pro) will do 1920 x 1080 @ thousands of colours, I just dunno if it'll go that high on a machine that isn't a nubus powermac
It was introduced in late '98 if MacTech is to be believed. But clearly for PowerMacs, I wonder if they would work on a 68k Mac... I'm surprised anyone still created NuBus device as late as that (says the guy that did one in 2022...). I'll be content with the first Highly Desirable Macintosh Interface for 68K Mac then.

... though of course, now I sort of want to be the first to do the 4K/displayport version ... mmmm ... TDP142 retimers aren't very expensive ... 32-bits DDR3 at 400 MHz (800 MT/s) is likely enough bandwidth for at least 8-bits color, though would be limited for 24-bits ... TE0712 would work I think ...
 
Last edited:

LaPorta

Well-known member
Very late to the party, but, can you pop this in a IIfx?

Edit: I'm an idiot, I thought this was a NuBus card.
 

Jockelill

Well-known member
Very late to the party, but, can you pop this in a IIfx?

Edit: I'm an idiot, I thought this was a NuBus card.
The IIsiPDS can definitely be adapted for the IiFx. @Melkhior doesn’t have a machine, I do but he is not yet convinced I’ll beta test it 😅😅. The pinning is different for IIsi and IIfx. The IIsi PDS also works in the SE/30.

And I have tested the Nubus version in the IIfx also. Slower than on the 650, but still impressively fast for a 68030 machine. I would so love to see what that PDS could do 😅😅
 
Last edited:

Jockelill

Well-known member
Also, some games (and applications like Excel, but who cares 🤣), actually do support the full resolution, here SimCity 2000 and Civilization II running at Full HD:


IMG_9307.jpegIMG_9308.jpeg

Others are of course 640x480 (as when they were released):
IMG_9310.jpeg
But with a few mouse clicks that’s taken care of :)

IMG_9311.jpeg

And at last, don’t we all L O V E benchmarks 😅😅🤓?!

IMG_9309.jpeg
 

Melkhior

Well-known member
The IIsiPDS can definitely be adapted for the IiFx.
The NuBusFPGA should definitely work in there.

@Melkhior doesn’t have a machine, I do but he is not yet convinced I’ll beta test it 😅😅. The pinning is different for IIsi and IIfx. The IIsi PDS also works in the SE/30.
Well, now that your IIsiFPGA is working in a IIsi and a SE/30, it might be time to try a bitstream for the IIfx as well :) I was worried the weird PDS implementation might cause issue, but it is working for the SEthernet/30, so worth a shot probably.

The difference in pins is mostly the clock.
 
Top