Modify ColecoVision BIOS - Controller Interface

50 views
Skip to first unread message

Matheus Yan

unread,
May 13, 2024, 9:36:04 PMMay 13
to retro-comp
Hello everyone, Im trying to modify the ColecoVision Bios to adapt it for my existing hardware. Actually only the controllers interfaces are different from the colecovision ones, while colecovision needs complex routines to read the data from the keypad and the buttons of each controller, my own have a shift register addressed at ports E0 and E1, I need to modify it to simply read the data from this ports and interprate it as the pressed buttos for the games run. Im trying to understand a disassambled ColecoVision BIOS with Z80DASM and hava in hands a commented version of a simmilar Coleco BIOS (but this one do not work when compyled, I do not know why, Im using it just to read the comments and try to match it with the disassembled version). The fact is that Im noob on assembly, I can understand the instructions and know a little how it works and already write simple programs like interfacing a PS/2 keyboard and a 16x2 LCD but Im having difficult to modify a bios with much entry points, jumps, subroutines and with no labels. I already find the controller interface part and add some macros but Im far from understand it to the point to modify to my necessity. Does anyone hera already make something like that and could help me with this specific problem?
asasa.PNGare.PNGsdsddsd.PNG
H2Z80 Schematic 13MAIO2024.pdf
H2Z80_coleco_bios.asm
coleco_bios_list.asm
coleco_bios.asm

Henk Berends

unread,
May 14, 2024, 4:02:31 AMMay 14
to retro-comp
See also response to your previous post.

I did something similar and completely different:

The cvpatch.asm may help as another example how to modify the BIOS routines. There's also a link to the Colecovision Coding guide which contains a fully documented listing of the BIOS sources.

I now see you're using a 4Mhz CPU clock, it probably requires one ore more extra NOP's in the Coleco VDP routines to not exceed the VRAM write speed limitations. Or replace it with a 3.58Mhz clock if you want a more authentic Coleco game experience.

/Henk
Reply all
Reply to author
Forward
0 new messages