Page 2 of 2

Posted: Sun Apr 21, 2013 8:11 am
by eslapion
sjgray wrote:I think it was fairly common to swap around data or address lines to make routing the wires easier (or to confuse people). The computer doesn't care if D0 goes to D0 on the ROM or D5 or whatever as long as the data is written to the rom with the correct bits in the correct location it will read correctly. So, you can copy the ROM as-is and the copy should work in the board but look wrong to another device.
I think its a bit more complex than that because when reading both chips, the data was garbage but it was the same garbage for both chips which I know for sure contain different data.

Posted: Sun Apr 21, 2013 9:58 am
by sjgray
eslapion wrote:
sjgray wrote:I think it was fairly common to swap around data or address lines to make routing the wires easier (or to confuse people). The computer doesn't care if D0 goes to D0 on the ROM or D5 or whatever as long as the data is written to the rom with the correct bits in the correct location it will read correctly. So, you can copy the ROM as-is and the copy should work in the board but look wrong to another device.
I think its a bit more complex than that because when reading both chips, the data was garbage but it was the same garbage for both chips which I know for sure contain different data.
Are you saying that two roms with different contents read EXACTLY the same on another computer or eprom burner? Or are you saying they both just look like garbage?

Steve

Posted: Sun Apr 21, 2013 10:50 am
by 6502dude
eslapion wrote: Actually, all firmware on the board has a hardware level copy protection, including the autostart code ROM. Its kinda dumb to protect the code portion as it can easily be copied using software.

Its as if the pinout of the ROM chips isn't standard.
This didn't make any sense to me at all.
So, this morning I pulled out my Data20 and dumped the roms.
They are bog standard 2716 eproms.

(2K is standard required to support 256 characters for with 8 scan lines)

There is no copy protection, hardware rewiring, special pin outs, garbage characters, etc.

The character rom is very similar to standard Vic-20 character set, with only a few minor exceptions ie. for (CHR$00, CHR$28 )

Here is link to BIN files:
ROM Version 1.1:
http://www.6502dude.com/cbm/vic20/data20/data20_rom.bin

Character ROM:
http://www.6502dude.com/cbm/vic20/data2 ... hr_rom.bin

Posted: Mon Apr 22, 2013 6:10 pm
by eslapion
6502dude wrote:This didn't make any sense to me at all.
So, this morning I pulled out my Data20 and dumped the roms.
They are bog standard 2716 eproms.
I tried to read them as 2732 that may be my problem.
2K is standard required to support 256 characters for with 8 scan lines)
The character generator in the VIC-20 actually contains 512 characters. You can toggle between the two 256 chars banks using SHIFT-(Commodore key).

Altough this specific key combination does not work with the Data-20 display adapter, you can use the standard CHR$(14) and (I don't remember the way back) to obtain the same result.

Therefore I think the CG "should" have 4096 bytes.

Posted: Tue Apr 23, 2013 12:46 pm
by 6502dude
eslapion wrote: The character generator in the VIC-20 actually contains 512 characters. You can toggle between the two 256 chars banks using SHIFT-(Commodore key).

Altough this specific key combination does not work with the Data-20 display adapter, you can use the standard CHR$(14) and (I don't remember the way back) to obtain the same result.

Therefore I think the CG "should" have 4096 bytes.
My Data20 has 2716 EPROM for character rom. Maybe there were different versions of Data20 hardware with additional character set?

For my homebrew 6545 CRT controller, I used a 2764 EPROM and a register to allow me to select one of 8 character sets.
I included C64, C128, IBM PC character sets, and a custom character set I was developing.


Image