zee
Junior Member
Posts: 75
|
Post by zee on Sept 13, 2006 11:53:35 GMT -5
zee, what a nice comparison. I particularly like the last images of the C64 boot screen. How did you come up with the palette values for the kernal fix? Since it appears you have a framegrabber that can represent the colors fairly well, I guess grabbing the colors of the C64 and then comparing to the possible colors (e.g. from TLR's palette utility) and finding the closest match would make the most true colors. Is this how you did it? Unfortunately I don't have a good frame grabber card, so for now I am stuck with taking pictures of the TV screen, which gives a lot of problems with varying light levels etc. The reference palette I used (called Pepto's) came from here: www.pepto.de/projects/colorvic/It's now even included with the C64 emulator Vice. I've also converted that real C64 screenshot to 16 colour palette and it also came really close to what Pepto had calculated. How I did the palette for my DTV was by first cleaning up that final 256 colour screenshot in Photoshop to real 256 colours (that took a moment btw) and then converting it using Pepto's palette as a custom colormap, back and forth several times (preview is handy), to see what colour best matched up to which in the original 16. Now I just need to mod all my 4 DTV's.
|
|
|
Post by digge on Sept 13, 2006 13:07:30 GMT -5
Just curious, wouldnt it be possible to only hack the kernal without soldering anything to get fairly close to the original colors? Ofcoarse you cant use the same values in the kernal as zee but i was just wondering cause that would mean even ppl afraid to use a soldering iron can get nice colors.
|
|
zee
Junior Member
Posts: 75
|
Post by zee on Sept 13, 2006 14:59:46 GMT -5
From the palette of the unmodified DTV you only get 8 colours near the original tones.
|
|
|
Post by spiff on Sept 14, 2006 10:01:21 GMT -5
The reference palette I used (called Pepto's) came from here: www.pepto.de/projects/colorvic/It's now even included with the C64 emulator Vice. I've also converted that real C64 screenshot to 16 colour palette and it also came really close to what Pepto had calculated. How I did the palette for my DTV was by first cleaning up that final 256 colour screenshot in Photoshop to real 256 colours (that took a moment btw) and then converting it using Pepto's palette as a custom colormap, back and forth several times (preview is handy), to see what colour best matched up to which in the original 16. Now I just need to mod all my 4 DTV's. Cool. Thanks for the description of what you did. I think I will buy some frame grabber and try to do these experiments when I get some time - just to see how big the differences are between various DTVs and C64s. Since I have four C64s, I will try to compare their colors and finding the closest match. And I too have a few DTVs, and I am planning on getting some more once I have it all worked out: Trying to find the easiest way to update them, both in terms of the hardware flaws and replacing the flash filesystem. After that they will make cool presents for friends, especially when customized with personal favorites of games.
|
|
|
Post by spinal on Jan 24, 2007 8:23:02 GMT -5
Can someone give me some step-by-step (never hacked a thing im my life) direction to changing the C64 colors, my 3 greys are too close and some of my games look crap because of it.
|
|
|
Post by gmoon on Jan 24, 2007 8:53:04 GMT -5
Can someone give me some step-by-step (never hacked a thing im my life) direction to changing the C64 colors, my 3 greys are too close and some of my games look crap because of it. To change the colors permanently, you need to alter the default palette, in the Kernal ROM: For the HUMMER (TLR's site has the ROM disassemblies -- get the palette address there, if not modding a Hummer): FBE3 00 0F 36 BE 58 DB 86 FF FBEB 29 26 3B 05 07 DF 9A 0A This is a conversion table for colors 0-15, i.e., the normal range of C64 colors (black, white, red, cyan, etc.) The values in the table are DTV palette values used to represent the original colors. David's site has a image of the palette: galaxy22.dyndns.org/dtv/common/photos/index.htmlAnd you can extract the RGB values from the pal files on the page, too (if you want to view the specific color on a VGA mon--but it probably won't translate well...) 'FLASH' can change individual bytes in the ROM, you can do that without reflashing the whole thing. You really might want to save your kernal, alter the saved version, then use 'kernalpatcher' to load it to RAM. Better to test that way before slamming the ROM.
[EDIT] Use 'kernalpatcher' to save the current ROM kernal to disk. Then any Hex editor to alter those values. It might be a tedious process. Actually, for testing (temp change) you can just poke DTV palette values into the (16 lowest) palette registers: $D200 to $D20F: POKE 53311,1 ; enable extended registers POKE 53760,X ; 53760 == $D200, X == your new value
[EDIT, again] The palette addr above for the Hummer--this is for a 'stock' Hummer kernal. Most folks use a modified DTV V2 kernal to reflash their Hummers. So this info is INCORRECT for most reflashed HUMMER Kernals. The addr for PAL DTV is $FA56. Do a quick comparison of the above 16 values. Check them against $FA56 and $FBE3. If they match, you've found the default palette. TEST WITH RAM KERNAL FIRST!
|
|
|
Post by David Murray on Jan 24, 2007 9:23:57 GMT -5
Another thing you could do if you just want to experiment with colors is use this progam: galaxy22.dyndns.org/dtv/common/software/index.htmlScroll all the way to the bottom, it is called "Color Test 2" and it is the first program I wrote for the DTV, and it works on all 3 versions. Once you set the colors the way you want, you can exit back to basic and the colors will stay the same. You can load other programs too and see what they look like. Power cycle the machine to get the default colors back.
|
|
|
Post by spinal on Jan 24, 2007 9:53:53 GMT -5
It only works in b/w on my lcd (pal) but its the first thing Ive got to work with the refresh rate seeming correct (I normaly have to cycle the power on my lcd a few times to get a stable picture, but with this, the picture is completely stable, but there is no colour)
[edit] didnt realize it was basic, ran from line 5 and I have color but cant change anything.
I changed line 1 to
1 poke 53311,1:poke 53312,2
This allows the program to run in colour, and I can change tem. Is there a [simple] to save this to the kernal directly? It would be a great feature to add to the program.
|
|
|
Post by David Murray on Jan 24, 2007 11:48:25 GMT -5
Oh.. I forgot that I added the NTSC lines in the code. Yeah, that was before I flashed the kernal in my hummer!
Yeah. All you needed was the line to "enable magic mode" I believe, which is POKE 53311,1
No.. that would involve a huge effort, and I'd have to duplicate or integrate all of TLR's work for writing a program which can write to flash. About the best you could ever hope for out of me might be someday I could design the program to create a kernal file with the color patches already made, so you could write it with TLR's program..
|
|
|
Post by spinal on Jan 24, 2007 11:52:28 GMT -5
About the best you could ever hope for out of me might be someday I could design the program to create a kernal file with the color patches already made, so you could write it with TLR's program.. Believe me when I say I realy hope you do that one day.
|
|