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

Jailbreaking the Radius PrecisionColor 24XP . . .

Trash80toHP_Mini

NIGHT STALKER
. . . or at least swapping its DeclarationROM out for a better one?

TylerEss approached me about this in PM and it turned out to be very interesting indeed! Way to go comrade! :approve:

So this isn't my hack, I just happen to have the necessary toys on hand to test out his theory.

Tyler has a 15" LCD with a native resolution of 1024 x 768 and the MaxRes of the Radius PrecisionColor 24XP is Mac 16" and not the 19" he'd like to achieve. If it turns out to be at a lower bit count, it doesn't matter to him, he just wants native resolution/more screen acreage.

He wondered if Radius lobotomized his 24XP at the DeclROM level to keep the "Personal" version of the Pro X Series down to that market segment by more than its VRAM allotment.

His thinking is that:

_If_ the RCP 24XP has enough VRAM to achieve 24bit Color at 832 x 624 . . .

_then_ it should have the VRAM to push out 16bit Color at 1024 x 768 . . .

_therefore_the Card must be limited in some other way to hold its MaxRes to the lower pixelcount.

Which led him to suspect that Radius hobbled the 24XP at the Declaration ROM level.

He'd read about my ROM swapping somewhere, probably this thread: Is it is . . . or is it ain't . . . IT IS!!!! =8-D

Whatever . . . his question jogged my memory about having that 24XP in the Magic Plastic Shoe Box of NuBus VidCard Goodness. The 24X ROM was still sitting in the socket of an Apple 24AC right there in my Pet IIfx . . . so I swapped the ROM out and did some tests . . .

. . . and wound up getting back to work 5 minutes late from lunch. :p

I could swear that I got the 24XP to do 1024 x 768 @ 24bit successfully the first try, but I didn't do a screen shot, so I can't be sure. I know when I tried it at 1152 x 870, the Card wigged out in a very interesting and consistent manner. Later testing Appears to show that it was really displaying 16bit pixels, despite the Monitors Control Panel showing it as 24bit.

edit: I was probably so surprised to see 1024 x 768 pixels pop up on the screen in B&W that I misremembered it as having been successfully changed to 24bit.

Whatever . . . 1024 x 768 test results:

RPC24XP-24XROM2.0-4bitGS.jpg

RPC24XP-24XROM2.0-4bitC.jpg

1152 x 870 test results:

24XP-X-1152x870x1bit.jpg

24XP-X-1152x870x4bitGS.jpg

24XP-X-1152x870x4bitC.jpg

So far, so good, but it gets very strange! 8-o

edit: Tyler, I know this isn't the result you were hoping for (as yet! [}:)] ]'> ) but it's very promising!

personal note: I wish I'd had 4bits of grayscale on my first big CRT. The Panasonic M1900 output the equivalent of the 1152 x 870 x 1bit B&W pic above on a 19" CRT. There was a card available that would do a much nicer grayscale image, probably better than the one above, but I couldn't afford it. Still, after doing graphic design in a kiddie pool through the 9" B&W periscope on my SE/Radius_16, it was like doing a back float in an Olympic size swimming pool with that Panasonic Card/CRT combo and the (used) Mac IIx! [:D] ]'>

 

Trash80toHP_Mini

NIGHT STALKER
Strange part:

At any color/grayscale depth greater than 4bit, the screen timings go nuts, but the image doesn't go away entirely!

1024 x 768 test results:

RPC24XP-24XROM2.0-8bit.jpg

RPC24XP-24XROM2.0-16bitC.jpg

RPC24XP-24XROM2.0-24bitC.jpg

Notice that the color palette bars look the same for 16 and 24 bit . . .

1152 x 870 test results:

24XP-X-1152x870x8bitGS.jpg

24XP-X-1152x870x24bitC.jpg

Sorry the 19" results aren't done systematically, it's late, I'm really tired and I wanted to get this up tonight . . .

From my investigations for the ongoing SuperMac Spectrum/24 Project, I have a sneaking suspicion that a dab of crystal replacement therapy might go a long way.

IIRC, the XP does a lower res than the X, it does a creditable job of trying to get the disallowed resolutions onto my MultiSyncCRT. I have no idea if the timings are within the tolerances of an LCD, but the fact that they're only slightly garbled/doubled up in Video Memory (the screen shot data) leads me to believe that investigations of the VRAM on the XP and the Crystal Clocks on both cards are in order.

g'night! :sleepy:

 

Trash80toHP_Mini

NIGHT STALKER
g'day! Now that my eyes cooperating with each other and a mug-n-a-half of coffee has overcome stiction in what I use for a brain:

Crystal Can Specs:

C14.318________Radius PrecisionColor Pro 24XP

One of my three RedRadiusPixekRockets™ is AWOL ATM, I have a suspicion that it's the Radius Card.

I'll assume the third Red Card has the same Crystal Can spec as the two Apple Display Card 24AC Cards(?) sitting on my desk . . .

C14.3181_______Radius PrecisionColor Pro 24X

From my investigations of Resolution Timings in the SuperMac WideScreen Project, I know that 1/10th of whatever they use as the base unit for Crystals might be, would be critical.

My working assumption is that timing is just enough different that the Card is writing all its data to the available VRAM and doing the video equivalent of a carriage return at the wrong time.

note: It's a lot more complicated than that, but that's the only way I can think of describe what's happening here that makes any sense at all, without delving into a lot of technical gobbledegook for video output that has taken me quite a while to become even reasonably comfortable about screwing around with it in the SuperMac Project.

WAG: I have my suspicions that the pixel count may be off in both directions, but it's readily apparent only on the vertical axis. Dunno really, this has my brain, not so much fried as seared on both sides.

I'd greatly appreciate any and all suggestions as to what the blazes is going on here! 8-o

 

Trash80toHP_Mini

NIGHT STALKER
Here's a screen shot of the technical gobbledegook:

Spectrum24SuperVideo.00.jpg

Meanwhile, I did the converse operational test of the 24XP Jailbreak and successfully lobotomized a Pro level 24X/24AC.

It now thinks it's at the 24Xp(ersonal) consumer card performance level!

ScreenShots to be posted . . . whenever . . .

note: once again, the specs over at LEM appear to be in error, more screen pics coming . . .

 

Trash80toHP_Mini

NIGHT STALKER
I found my third Red Card, it was under the first pile of papers I moved from my desk to start cleaning up and organizing . . .

. . . so that activity ended abruptly. :lol:

As I thought, the RPCP_24X was cocooned in its zip-locking anti-static bag with the, free ranging, extra ADC_24AC ROM. It does, indeed, have the same 14.3181MHz crystal as the Apple version.

Now I'm sorely tempted to swap the Crystal Cans of the two experimental cards along with the ROMs. [}:)] ]'>

Meanwhile, bbraun let me know that the timings for video card resolutions appear to be conveniently stored in the card's Declaration ROM. The method is outlined in DCaDftMFH, so I'm back to hitting the books again.

edit: looking over the error screenshots above, I noticed the vertical shift of the Menu Bar at 1152x870 resolution when the bit depth is changed from 8bit (Grauscale in this instance) to 24bit. The fields for the images appear to be complete, but overlapped.

I'm going to procrastinate on the book learnin' and go with the hardware testing flow . . . it's time to warm up the irons! :approve:

 

trag

Well-known member
There's a very good chance that it is a RAMDAC issue. Even if there is enough VRAM to do larger resolutions, and even if the memory is fast enough to output the full resolution at lower color depths, the RAMDAC still needs to be fast enough to spit out enough pixels to cover the whole screen.

Ignoring the blanking intervals, at 800 X 600 @ 60Hz, the RAMDAC is spitting pixels at 28.8 MHz.

At 1280 X 1024 @ 60Hz, the RAMDAC is spitting pixels at 78.6 MHz and it doesn't matter what the bit depth is. The RAMDAC is essentially a three port D to A converter which accepts the digital pixel information, be it 1, 2, 4, 8, 16 or 24 bits of color data and then converts that digital data into analog voltage levels at the frequency rate required for the display output.

Anyway, you might, if there is some way to do so, try hacking a lower screen refresh rate onto the higher resolutions and see if that removes the artifacts. That would be a good test of whether the problem lies in the RAMDAC speed.

 

Trash80toHP_Mini

NIGHT STALKER
It seems to be spitting out enough pixels at 16bit to cover the screen twice over, just interlaced and possibly a bit truncated on the vertical axis.

The overlap shift going from 8 to 16 bits at 1152 x 870 makes me think there's a timing issue that might be alleviated with the crystal swap . . .

. . . that or the whole thing will go down the toilet.

We're talking an oscillator speedup of something on the order of 7 hundredths of a percent. That just might do it.

However you're right, the RAMDAC is indeed a different part:

24Xp___RAMDAC = Bt473KPJ80 - 770 9348 E

24X____RAMDAC = ADV473KPJ110 - (Delta Symbol) 9408 - OF27527.1

24AC#1_RAMDAC = Bt473KPJ110 - 150 9322

24AC#2_RAMDAC = Bt473KPJ110 - 148 9322

The two major ASICS appear to be identical across the four cards, but for date/batch coding, like the second group of numbers posted above.

I'm off to play with the de-soldering & soldering irons . . . lata! [}:)] ]'>

 

Trash80toHP_Mini

NIGHT STALKER
Curiouser and curioser . . . :?:

I just tried the Apple Display Card 24AC ROM rev. 1.1 in the Radius PrecisionColor 24Xp and got some different results . . . which made me re-examine the error pics above.

At 1152 x 870, I hadn't noticed the horizontal axis shift induced by changing from 8bit to 24 bit when using the 24X ROM in the 24Xp Card, just the vertical shift of the menu bar.

Neither shifted in the three 1024 x 768 resolution pixel depth change screenshots in going from 8bit to 24bit.

The Radius PrecisionColor 24Xp card running from the drivers in the Apple Display Card 24AC ROM, gives consistent menu bar and horizontal shift across all three resolutions. I'll try the 24X ROM again to get matching screen shots . . .

. . . and then I'll resort to crystal can replacement therapy for the poor, abused 24Xp. [}:)] ]'>

 

TylerEss

Well-known member
I was speculating pretty strongly that the RAMDACs would be the same across all the card versions, because switching RAMDACs would require more engineering work... but it looks like several of these versions are maybe using different speed-ratings of a similar RAMDAC?

Since the overdrawing is happening in screencaps, and not just on the monitor, can't we be pretty sure that the issue is in the memory initialization / mapping being done (since you swapped in the ROM from a card with more VRAM) and not in the DAC/monitor timings?

I suspect that DeclROM surgery to keep the executable code the same but change the timings table would be the direction to go. I seem to recall reading a book or article about DeclROM anatomy some years ago...

 

Trash80toHP_Mini

NIGHT STALKER
Yep, the VRAM dumps tell the story of what the card is doing internally, you can take 'em when you don't even have a display that'll work.

If you recall that book's title . . . you know what to do! [:D] ]'>

 

Trash80toHP_Mini

NIGHT STALKER
All is quiet on the VidCard Hacking front. Had a bad scare when I desoldered the 24AC/X crystal from the 24Xp and reinstalled it . . .

. . . NO PICTURE!!!!! 8-o

NoPro . . . NoROM on board . . . OOPSIE! :-I

24AC/X and 24Xp survived the operation, are out of recovery, tests are positive and both are doing fine and resting comfortably.

 

Trash80toHP_Mini

NIGHT STALKER
Maybe because they figured nobody would shell out a KiloBuck for a GX 1600 pixel barge in order to transport a rowboat of lightweight pixels?

Interesting notion though? ;)
 

trag

Well-known member
If your Static VRAM read is good then that suggests that the XP multiplexes the bits from its VRAM chips differently than the way the X does. If that's true, there's nothing you can do to convert the card, short of rewiring the VRAM outputs.

Maybe.

I've attached the datasheet for the Bt473 RAMDAC. This data sheet encompasses both the 110MHz version as well as the 80 MHz version.

The 80 MHz supports a slower clock cycle time, and that could definitely affect higher resolutions. I'm not sure how it could affect VRAM contents, unless the RAMDAC writes back to the VRAM, which seems screwy.

BTW, questcomp.com claims to have stock of the 110MHz version, but you'd have to ask for a quote.

Might be interesting to try a transplant.

I would guess the ADV473 RAMDAC is the same as the BT, just fabricated by a different company. Too lazy to look for a datasheet to confirm.

Hah. Digikey has stock of the ADV 80MHz part (if you don't mind spending $300 on 12 of them.) Here's the ADV datasheet as well.
 

Attachments

  • BT473KPJ.pdf
    2 MB · Views: 3
  • ADV473.pdf
    4.6 MB · Views: 1
Last edited:

trag

Well-known member
Found some of the BT473KPJ110 and ADV473KP110 on Ebay. High probability of the BT being fake, in my opinion, given the photo isn't anywhere close to correct, but for $12 per five, I figure it's worth a shot. The bigger problem is that they could be remarked 30, 66 or 80MHz version.

ADV made a 135MHz version. I wish I could find that one.

Also ordered some 68pin PLCC sockets so that they'll be easy to swap out...

Now if I just had any idea where my Radius NuBus cards are...
 

joshc

Well-known member
As the original post was so long ago, a few of the links are broken. Where would I find the ROMs of the other cards? Is it as simple as a ROM swap/reprogramming the ROM with the one from the X variant of the card to enable the higher resolution?
 
Top