Jump to content
IGNORED

Colecovision BIOS


artrag

Recommended Posts

Hi all, where can I find a easy to read description of the BIOS, in order to be able to disassemble and understand the code of old games ? Specifically, how does 0x1fbe (PUT_VRAM) work?

PS

I'm trying to support TIX in hacking Venture, but new I need to alter some details of the initialization code

 

PPS

I've followed for a while the code in the BIOS. It seems written by someone who has never seen a z80 (!!)...

 

  • Like 1
Link to comment
Share on other sites

I second this motion.

Although the Programmer's Manual does have information it is neither complete nor does it have examples.

I have tried all sorts of fooling around within Assembly at a great many hours with little success because I might not be meeting previous criteria as in setting up an address or patterns.

Shape Tables, Put Frame.... Just a ton of stuff.
What is true in any forum is that when you are in a company and working on a game there are those who you can go to for tips, advice and knowledge that you will never find in a classroom or an over engineered technical manual.

Going through past posts from the old Coleco Programmers Yahoo Group there was more participation and now that the new programmers are coming of age it seems no one wrote a guidebook nor has the time to share knowledge. Some even have businesses to run.

I can not speak for others but If someone wrote a comprehensive programmers guide to the ADAM/Colecovision/SGM in Assembly language with examples then I would pay top dollar for it.

If I had to suspect then I would bet money that half you guys out there already have tons of code written down already just not compiled and bound together in some Coleco Programmers Bible.

I swear, I am on fire to make software but I spend days just trying to figure stuff out that you guys have already done years ago just looking at the games you have released and the strain of inching forward is a huge turn off.

Link to comment
Share on other sites

Put_vram is a routine that load the data to the VDP from ROM designation to VRAM designation. In C, to use it if I want to update the screen with some tiles, I do put_vram(0x1800,StatusInfo,32);

Basically it is;
put_vram(VRAMaddress,SourceAddressinRAMorROM,count);

I use it to load uncompressed graphic data to the VRAM.

PS:Maybe I misunderstood this topic. It been a long week. If it helps, newcoleco homebrew kit have the source code in asm if you look in getput11, and lib4k folder. I think it's best to build Venture from the ground up because there are stuff that is missing in the Colecovision version from the arcade version. It's a lot harder to kill the enemies in the arcade version, plus there's 24 missing treasure graphics too.

Edited by Kiwi
Link to comment
Share on other sites

Yes thank you

BTW, just to know, could I do a 32KB rom and assume it will appear from 8000h to FFFFh without any specific care?

 

The BIOS is 8K and goes from 0 to 3FFF. A cartridge is up to 4x8K. You can't just use a single ROM chip because the CV gives you an activation line for each 8K of ROM space. Some glue logic would allow you to activate a ROM chip on any of those 4, and then the ROM would connect to lines A14-A0.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...