• 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.

SuperMac Spectrum/24 Project

Trash80toHP_Mini

NIGHT STALKER
The dearth of information on these cards on LowendMac is apalling.

Spectrum/24 Series III

Spectrum/24 Series IV

Spectrum/24 Series V

Spectrum/24 PDQ

Spectrum/24 PDQ+

My card has the Spectrum24 Version 1.0 ROM c1989 . . .

. . . the standard 64MHz Oscillator (Crystal Can) on board for use with the FixedRes SuperMac 19" Monitor . . .

. . . a DIN8 connector on the back

Presumably the connector is intended for serial comms with a High End MultiSync like my . . .

. . . Radius PrecisionView 2150 with HD-15, BNC and DIN8 (specified as serial) connections . . .

. . . MAG M21XF which has HD-15, DA-19 and DIN8 (presumably serial) connections.

The Spectrum/24™ User's Manual that came with the card is c1989 . . .

. . . The Control Panel/Driver setup is Version 2.7 from 1990 . . .

The LowendMac info mentions the Spectrum24 Series IV card as having a Version 1.6 ROM and the Series V as having a Version 3.0 ROM (PPC Compatible)

Presumably, mine would be the Series III variant . . .

The SuperMac Spectrum/24 Series III card is a 12" NuBus card compatible with 680x0- and PowerPC-based Macs running up to Mac OS 8.1. It may be compatible with higher versions of the Mac OS, but no information for Mac OS 8.5-8.6 is available at this time, and it's doubtful that the card is compatible with Mac OS 9.
I can test this easily enough when I get the chance, no mention of ROM rev requirements in the Series III article, so we'll see.

Here are the screen shots of from my card set up and running in the pet IIfx:

Spectrum24_Shots.10.2p.jpg

There's no mention of the Virtual Desktop, Zoom or Hand Panning capabilities of this series on LowendMac. A few things came immediately to mind when reading the manual. (YEP! I'm a RTFMin' Wooly Rhino from the Paleolithic CPM Era! [;)] ]'> ) If this thing does virtual desktops of 4096x1536x24bit and supports custom monitor settings as explained in the manual, this just may be a 1600x1200x24bit@60Hz Silver Bullet from the IIci era!

Not to mention the possibilities for 60Hz output at 480, 720 or even 1080p, all well under the 4096 x 1536 Virtualized Desktop capability of the card. Depending upon how, and how much, memory blocking is done/works for the expanded desktop virtualization, the tools are right there in the software to make the attempt to spec all those resolutions as custom monitor settings.

I think I need to get a 24MHz Crystal for playing around with the MultiSyncs and setting up some custom monitor settings. :approve:

The VRAM on board is TC524256Z-10 and there are six banks of 4 SIPs ea. 24 in total. That info alone ought so tell the tale of the maximum pixel count possible in 24 bit or 16bit modes, but I never did figure out how to do the conversions. What are the VRAM induced limitations of my pixellated dreams for this lil' puppy?

Has anyone already played around with one of these cards already? :?:

 

Trash80toHP_Mini

NIGHT STALKER
Looks like it'll do 1600 x 1200 x 24bit without a problem.

http://www.themacintoshguy.com/mactips/archive/tip16.shtml

I know this is old hat for a lot of you, but it might be useful for others so I'm going to go through the exercise in public . . .

. . . so please correct me when I put my foot in it.

Research results:

(((WxHxC)/8)/1024)/1024)

W = Screen width in pixels

H = Screen height in pixels

C = color depth in bits per pixel

ex.

640x480x16 = 586KB
There was a caveat posted later that this formula is good only for 2D resolutions, which is fine by me . . .

Standard Definition Formats
480p - The Resolution is 704x480 pixels, sent at 60 complete frames per second.

720p - The Resolution is 1280x720 pixels, sent at 60 complete frames per second.

1080p - The Resolution is 1920x1080 pixels, sent at 60 complete frames per second.
This is way :cool: it looks like I ought to, at the very least, be able to get QuickDraw accelerated 720p out of a 23 year old NuBus VidCard! 8-o

It looks like 1080p with 8% more pixels than 1600 x 1200, may be too many pixels for 6MB of VRAM . . .

. . . dunno, gotta tweak the spreadsheet to find out, I'm getting a result of 600k for the example quoted above thus far . . .

960 x 540 x 24bit ought to work just fine, as that's about 1/4 of the pixel total of 1600 x 1200 . . .

I'll call this pixel-halved 1080p/68kMLAp, for 1/2 scale, Pixel-Doubled 1080p SuperMac Spectrum/24 output.

Man, I really hope this works! [:D] ]'>

. . . to be continued.

 

beachycove

Well-known member
I am not sure what you are doing here, but this involves new components rather than a software hack, right?

At any rate, I am moderately interested, because I have one of these cards. But mine does 1024x768 max. in millions of colours in its stock configuration.

 

Trash80toHP_Mini

NIGHT STALKER
Just the Crystal needs to be changed to 24Hz in order to use this card with MultiSync Monitors. With 6MB of VRAM it'll do 1600x1200x24bit and 720p. It's shy .06MB to do 1080p at 24bit, but I'll bet I can get it to do 1080p at 16bit!, not bad for a card from 1989!

I've got the manual for the card, which documents computing the timings necessary to spec any custom resolution that requires up to 6MB of VRAM. [;)] ]'>

 

Trash80toHP_Mini

NIGHT STALKER
I'm going to try to explain the project again. Our cards have socketed 64MHz crystals so they work with the SuperMac Hi-Res RGB Monitor at its Fixed Resolution at a 24bit Color Depth.

From the Manual, it appears that this card shipped with three Crystal Cans, 64MHz, 30.24MHz for use at 640x480x24bit with the Apple FixedRes RGB Monitors and a 24MHz Crystal for use it with MultiScan Monitors.

6MB of VRAM is insanely cool for a card of this vintage, it's on there to support extended desktops for CAD etc. Now that we've got HDTV LCD Monitors with insanely cool wide screen pixel counts, this card is coming into its own again.

Set the timings for whatever you want while you're in standard mode and switch to the custom timing settings and the card tells you what value crystal you need to install to get it up and running!

 

Trash80toHP_Mini

NIGHT STALKER
CORRECTIONS:

I found the tech specs. in the friggin' introduction!

It came with two crystals, not the 24MHz crystal for MultiSync support.

Bad news, the card supposedly has only 3MB of VRAM, dunno how that works with 24 256KB SIPs, or is it 24 256kb SIPs?????

Whatever, my spreadsheet says 720p @ 24bit is doable as is 1080p @ 8bit. Good enough!

The built in interpolation algorithms (hardware based?) for displaying 720p on a 1080p LCD probably look a lot better than just halving the resolution of 1080p would, on second thought.

So 720p seems to be the sweet spot, 1600 x 1200 x 8bit is a semi-sweet resolution and 1152x870x24bit should just fit into the 3MB of VRAM as well.

 

Trash80toHP_Mini

NIGHT STALKER
I struck silver mining data for the project during a bit of down-time at work yesterday!

First, here's the spreadsheet data, bit depth has been adjusted to keep within the 3MB VRAM limitation:

Code:
VRAM Calculator.00						

H	V	Pixels 	Bit	________	________	VRAM

640	480	307200	16	4915200	614400	600
704	480	337920	24	8110080	1013760	990
1280	720	921600	24	22118400	2764800	2700
1920	1080	2073600	8	16588800	2073600	2025
960	540	518400	24	12441600	1555200	1518.75
1600	1200	1920000	8	15360000	1920000	1875

352	285	100320	24	2407680	300960	293.90625
320	240	76800 	24	1843200	230400	225
640	480	307200	24	7372800	921600	900
800	600	480000	24	11520000	1440000	1406.25
824	632	520768	24	12498432	1562304	1525.6875
1024	768	786432	24	18874368	2359296	2304
1024	768	786432	24	18874368	2359296	2304
1152	870	1002240	24	24053760	3006720	2936.25
1280	1024	1310720	16	20971520	2621440	2560
I'm still looking for gold, but wikipedia strikes again . . .

I found this gem in the "Further reading" links:

http://www.tinyvga.com/vga-timing

It looks like this 1989 card should equal the pixel counts and, possibly, better one of the bit depths of the Radius Thunder IV GX 1152 . . .

. . . if not its acceleration rates . . . see data above . . .

. . . here are the timings for the three resolutions of interest to me:

http://www.tinyvga.com/vga-timing/1152x864@60Hz @ 24bit (Mac 1152 x 870 would be nice, but this ought to be more LCD friendly)

http://www.tinyvga.com/vga-timing/1280x1024@60Hz @ 16bit (AFAIK, the Radius Thunder IV GX 1152 will only do this one at 8bit!)

http://www.tinyvga.com/vga-timing/1600x1200@60Hz @ 8bit (which equals the Radius Thunder IV GX 1152)

Terms for researching any other resolution timings:

http://en.wikipedia.org/wiki/Computer_display_standard

Striking gold will be finding the timing data for these analog standards for HD-15 input:

_720p = HD 720

1080p = HD 1080

I'll need to edit in the screen shots of the Custom Monitor Setup windows. Suffice it to say,the timing tables linked above look like a spot-on match for the dialog box or about as close to it as will be possible to find. It's time to plug in some values, read off the card's oscillator requirements and then order a few Crystal Cans! [:D] ]'>

This is one crazy :cool: VidCard for 1989! :approve:

 

Trash80toHP_Mini

NIGHT STALKER
Update: In the lower right hand corner of the screenshot is the dialog box for setting timing parameters for custom monitors . . .

View attachment 16458

The window shows the timings for the 640 x 480 resolution I used as atarting point (saved as per the instructions in order to get a new choice) so when I figure out substitutions for those timings in the boxes from . . .

http://www.tinyvga.com/vga-timing/1600x1200@60Hz

. . . the SuperVideo software, according to my reading of the Docs, will display the new resolution derived from the timings in the resolution list window and spec the oscillator frequency required to pull this off. Maybe I'll be able to start building a spreadsheet to translate the timings from the VESA data to the settings for the SuperVideo entries tomorrow.

Meanwhile, has anyone got a notion for searching out the timings for 720p and 1080p over an analog VGA connection? :?:

p.s. I seem to be talking to myself in here again, gang. :-/ Has anybody got suggestions, WAGs or experience bases opinions about how practical this project may be?

 

olePigeon

Well-known member
Have you tried SwitchResX for OS X? If you have an OS X machine, I think you can use it to find out timing information on monitors connected to it. I used it to get a completely unsupported miniature LCD to work with my laptop as an external display.

 

Trash80toHP_Mini

NIGHT STALKER
Interesting . . . THX, got linkage?

Does it break out the front porch, back porch timings etc?

I've got the USB2 in Classic under X on the QS'02 project going, but I've mislaid the OS 9.2.2 CD so that's been on hold. I've got a 32" 720p FlatScreen I run off VGA sometimes, that's the target display, if I can snag the timings off that it would be great.

If I don't find that blasted 9.2.2 CD soon, I can load just X on one of the drives temporarily to get the 720p timings.

 

Trash80toHP_Mini

NIGHT STALKER
_VidTimimgsCalc_02.jpg

iCrap! :-/ The card's 3MB of VRAM is .078MB short of doing 1368 x 768 at 24bit.

Looks like I have to find the VESA timings for Analog 720p to get a 24bit widescreen resolution on my 1080p display after all.

But that's what I need for my 32" 720p flatscreen anyway.

Does anyone know of a source for the timing info for Analog VGA 720p & 1080p? :?:

Google time! Couldn't find it before, but I wasn't all that serious then and VESA is another good search term! [:)] ]'>

The first good hit mentions two available timing calculators: http://www.vesa.org/vesa-standards/standards-faq/

Interesting, but no cigar: http://ez.analog.com/thread/10588

BINGO!!!!!!! Anybody else wanna read the 50MB/564 page Information Display Measurements Standard? :lol:

 

Trash80toHP_Mini

NIGHT STALKER
Found lots of glossary/comparative spec. articles re: other formats, but nothing specific about front porch, back porch etc, timing specs. for VGA analog input found as yet.

Most of the links there, and elsewhere, refer to digital input when they have any timing info available at all. :-/

 

Phipli

Well-known member
Re-animating a long dead thread...

So I think the main difficulty and likely point at which trying to get 1920x1080 or 1600x1200 working on a Spectrum/24 Series III would fail, would be the pixel clock. The fastest clock included with a Spectrum/8 Series III (using as reference because the manual is online) is 80MHz :

1635769972716.png
This website lets you calculate some very useful information about various resolutions, what is interesting is that the existing SuperMac timings don't seem to exactly match the standards, so I suspect there was some rationalisation of pixel clocks to enable more resolutions to be achieved with a little bit of creativity on the horizontal and vertical non-displayed timings, or Apple / SuperMac were just doing things differently. I don't have a card yet, but once I do I'll be interested to see what the detailed timing breakdowns are for the built in resolutions. I believe you might be able to view them in this window (viewed with ResEdit, because the button is greyed out as I don't have a SuperMac card installed in the Emulator :) )

1635770227266.png

I anticipate that a "VIDCLK period" is a pixel duration, meaning that you'd likely do something approximating (but not exactly, I'm just eyeballing this before I see the built in information!) the following, noting I think this is probably too higher clock for the card...

Clock : 138.5MHz
HES : 32
HEB : 80
HSB : 48
HT : 160
VES : 5
VEB : 23
VSB : 3
VT : 31

Note H Black (HT) = H Front Porch (HSB) + H Sync (HES) + H Back Porch (HEB) etc.

To improve the chances of it working, I've used the "CVT-RB" "Reduced Blanking" timings, designed for LCD displays which don't need to move the electron gun back over to the other side of the screen. With these timings you can use a lower frequency clock as it doesn't need to get through so many "blank" pixels.

More practically, some timings for 1280x720 might be feasible, as a 64MHz or 74.5MHz clock would be sufficient. Given how close to 80MHz the required 74.5MHz is, the thought occurs that it might be possible to use the 80MHz clock with a bit of tweaking, for example running the display at (almost) 64Hz vertical refresh rate.

Clock : 80MHz
HES : 128
HEB : 192
HSB : 64
HT : 384
VES : 5
VEB : 22
VSB : 3
VT : 30

In terms of video RAM... This would need 1280x720x24/(8x1024x1024)=2.64 MB, so you might even get 720p at 24bit!

Once I get hold of the Spectrum/24 Series III I have on the way I'll do a bit more work, I might need to take a bit more care with the sync pulse timings for 80MHz, as the timings for 720p are technically for 79.75MHz, perhaps I need one more pixel's worth of delay here and there to make up for it.

I'd be interested to know if anyone has any thoughts.
 
Last edited:

Phipli

Well-known member
One more thing I forgot to say - there is a chance that all this simply isn't supported by SuperMac on the Series III, because they quite specifically state that in the Spectrum/8 Series II manual. It says the following about the custom resolution portion of the Control Panel :

1635772588513.png

Given this it might just simply be not possible. Alternatively, perhaps this was said because they couldn't understand why you'd ever need another resolution / refresh other than what they'd offered, because it was such an exhaustive list!

Guess I'll find out at some point, unless someone wants to experiment before my card arrives.
 

Trash80toHP_Mini

NIGHT STALKER
Hi, welcome to the impossible dream thread. It will be interesting to see if your card can manage any new tricks.

Mine's the first rev Spectrum/24 with programmable goodies on board and socketed crystal can with its frequency as the input variable controlling resolutions.

By socketing a crystal on your card it may be able to do some of my card's tricks by manipulating the clock? Doubtful, but worth taking a look at just to see as might be trying my ROM image on your card to see just how backward compatible the hardware might be. Not as far back as my programmable resolution card would be my guess.

There's another thread about my Spectrum/24 where either @Gorgonops or @trag shot down hope that my card could push all those lovely pixels out the connector at the tail end of the card. The RAMDAC only supports output resolutions up to a specific point, all higher resolutions are for virtual desktop viewed through a window at that maximum supported output resolution.

At some point, I'm hoping one of our resident sorcerers might take a look at the architecture of my Card/ROM/Drivers and base a new tech build. If the proprietary logic/ASIC operations can be divined, replacements can be tested in my card.

If the ASICs can be tweaked to support a much more capable RAMDAC and possibly more VRAM, the existing drivers might possibly be used to create the crazy 1080p and 720p resolutions I had in mind for my IIfx. Wholly improbable, but maybe not impossible?

Meanwhile, I search results for the other thread haven't panned out. :confused:
 

Gorgonops

Moderator
Staff member
There's another thread about my Spectrum/24 where either @Gorgonops or @trag shot down hope that my card could push all those lovely pixels out the connector at the tail end of the card. The RAMDAC only supports output resolutions up to a specific point, all higher resolutions are for virtual desktop viewed through a window at that maximum supported output resolution.

I spent some time digging around for that thread, to no avail. Apparently I'm just not good with the search engine terms today.

Anyway, FWIW, my vague memory of the takeaway from that discussion was that the architecture of the 24 bit versions of these cards (the 3MB RAM models) is essentially as if you stacked up in parallel three 8-bit 1MB cards. IE, the issue with Trash's dream of outputting the mega-high (virtual) resolutions that in terms of raw pixel count could fit in 3MB is the output circuitry can't "chain" the memory on those three planes together. So, for instance, even if you stuck an oscillator in there that ran fast enough for a 1920x1080P mode's pixel clock (and somehow didn't melt the RAMDACs, given their maximum rated clocks are only a little over half what's needed for that) because the math tells you that doing 8-bit at that resolution only requires 2MB (a little less, actually) of RAM that card still won't be able to push it because in 8-bit mode it can't access more than 1MB.

Technically, yes, the bandwidth is there, IE, at 1024x768@24 bit it's throwing more *memory* out the back door per second than it would be at 1920x1080@8, but it can't throw that many *pixels* out. If you wanted to rip off the RAMDACs that are there and design new output circuitry that takes the three color planes for a 24 bit mode into a latch and then clocks them out as three 8-bit pixels through a faster RAMDAC (essentially clock-tripling the card to trade depth for pixels) then I guess that would probably be... possible? But it'd come at significant price. I don't know how this card presents the three bit planes to the mac, IE, does it present the 24 bit pixels "packed" (IE, it fits 4 pixels into three linear 32 bit words of memory space), or does it align them as one pixel per 32 bit word? (It just doesn't have bits to store the extra byte. Modern "24 bit" video systems of course typically use 32 bit memory and can use the extra byte for "other things", like gamma, transparency, z-buffer, whatever.) If it's not packed then your 8-bit mode won't be linear anymore and you'll have to deal with that in software. Quickdraw might not support such a monstrosity.

Anyway, that all said, I don't remember there being any explicit dealbreaker for 1280x720, memorywise that fits in 1MB per plane and the 74Mhz pixel clock might be within reason. Unless there's something about the DAC not supporting more than X-many horizontal pixels I'd think you'd be okay.

(I thought at least some variants of these cards supported 1152x900; the 1152 wide modes were a favorite for UNIX workstation designers specifically because they're almost perfectly a megapixel, IE, the most pixels you can wring out of an even 1Mbit/Mbyte/multiple thereof of RAM. 1280x720 uses more than 1024x768 but less than 1152x900.)
 
Top