Jump to content
IGNORED

CV Memory Map and programming info?


juice2839

Recommended Posts

I have been looking around for a decent memory map of the CV and didn't see one. I looked at the hardware and came up with the one below. I added in the SGM bank switching too. All the info I have found says the VDS is at 40h - 7Fh, but I didn't get that after looking at the hardware. Are there any programmers out there that can take a look at this and tell me if this would be a pretty good setup for a coleco's memory layout and ports? Also does anyone have any idea were the AY-8910 gets addressed with the SGM? This memory map does not take into account most of the mirroring that happens in the I/O ports. I used the literal addresses that I figured out from the hardware (If they are completely correct). Thanks for any input. Also is BEh and BFh where the Adam maps the VDP?

 

 

Super ColecoVision Memory Map
8K 0000h Colecovision Bios or Port 7Fh Bit 1 = 0 Ram
1FFFh Bank Switched 8K Ram Port 7Fh Bit 1 = 1 Rom
24K 2000h 8K above mirrored or Port 53h bit 1=0 mirrored ram
7FFFh Bank switched 24K Ram Port 53h bit 1=1 24k ram enabled
32K 8000h Cartridge Rom
FFFFh
Input/Output Ports
00h Reserved
7Fh
Write 80h Controller_2_Enable
Read/Write A0h Video Display Processor (VDP) DataPort
Read/Write A1h Video Display Processor (VDP) RegisterPort
Write C0h Controller_1_Enable
Read E0h Controller_Read
Write E0h Audio_Write
ADAM COMPUTER?
Read/Write BEh Video Display Processor (VDP) DataPort
Read/Write BFh Video Display Processor (VDP) RegisterPort
Edited by juice2839
Link to comment
Share on other sites

 

Yeah... That's one of the pages I looked at. It has no data about the IO address for the VDP or any info about the CV, but thanks.

 

http://adamwiki.info/Adam_Technical_Reference_Chapter_2_2.2#2.2.4_Video_Display_Processor_.28VDP.29

 

This has some info on it though. Looks like it has the same address I got elsewhere, but it does show that the sound is FFh write only on the Adam.

I doesn't show the controller address though.

 

I think I'll post this on the programming forum actually.

Edited by juice2839
Link to comment
Share on other sites

Do you have "cv programming.pdf"? In the very last 4 page have the memory maps information.

 

Okay if your talking about this http://www.gooddealgames.com/articles/ColecoProgramming/cv%20programming.pdf

It has no info on the last 4 pages about the input/output ports used.

 

In the VDP section of that PDF they have a snippet of C+ that uses address BEh and BFh for the VDP, but that's not where it is physically addressed from what I figured out from the schematic. Unless they just use garbage programming and it works because the address is mirrored. Or am I missing something?

Link to comment
Share on other sites

Doesn't the processor just output, input data from it own pin? It has no access to VDP memory. VDP has it own memory pool to access to. Processor sends requests to the vdp.

Input example: In ASM:

 

in a,(bfh) ; get register value (COLECO BIOS: call 1fdch)

Output example:

In ASM:

 

ld a, value
out (bfh),a ; set value
ld a, register_number
add a,80h
out (bfh),a ; write value in register

So it not mapped to the processor's memory map.

EDIT: SGM info, http://atariage.com/forums/topic/203851-super-game-module-technical-forum/

Edited by Kiwi
Link to comment
Share on other sites

Doesn't the processor just output, input data from it own pin? It has no access to VDP memory. VDP has it own memory pool to access to. Processor sends requests to the vdp.

 

Input example: In ASM:

 

in a,(bfh) ; get register value (COLECO BIOS: call 1fdch)

 

Output example:

In ASM:

 

ld a, value

out (bfh),a ; set value

ld a, register_number

add a,80h

out (bfh),a ; write value in register

 

So it not mapped to the processor's memory map.

 

EDIT: SGM info, http://atariage.com/forums/topic/203851-super-game-module-technical-forum/

 

 

I understand how the VDP works.. My real issue is with the addresses BFh. It's a mirrored address, and seems like junk programming. Someone has to understand what I am talking about. When you address decode you have your enable line to your Rom, Ram, I/O device from the address decode circuit.. A 74ls138 in this case. Mapping it out puts the VDP at A0h and A1h. Using BFh would work, but that's slopping because it's a mirrored I/O location. If for some reason the hardware changed (we know now that it didn't) You could have a problem.

Link to comment
Share on other sites

 

I don't recall any errors with the memory mapping.

 

I don't think there are any errors in the 74ls138 decode circuit. I just double checked it on the pcb. I think there might be an error on the joystick inputs, but I have not totally confirmed it. If I might ask what do you have for a I/O memory map? I think mine is correct except it depends on how you want to look at the decoding. I guess it would be the higher address that are true and lower addresses that are actually mirrored. Address lines A2-A3 are don't cares so it's not fully mapped. It would be nice to compare. Any idea where they map the AY-8910?

Link to comment
Share on other sites

Okay Revamped... This should be correct aside from not having the AY-8910 addresses......

 

 

Super ColecoVision Memory Map

8K 0000h Colecovision Bios or Port 7Fh Bit 1 = 0 Ram
1FFFh Bank Switched 8K Ram Port 7Fh Bit 1 = 1 Rom
24K 2000h-5FFFFh Expansion or Bank switched 24k Ram Port 53h bit 1=1 24k ram enabled
6000h -7FFFh 1k Ram mirrored or part of 24K Ram Port 53h bit 1=0 mirrored ram
32K 8000h Cartridge Rom
FFFFh

 

 

 

 

 

 

 

The I/O addresses again, but shown before mirroring...???

 

Input/Output Ports
00h Reserved
7Fh
Write 9Fh Controller_2_Enable
Read/Write BEh Video Display Processor (VDP) DataPort
Read/Write BFh Video Display Processor (VDP) RegisterPort
Write DFh Controller_1_Enable
Read FFh Controller_Read
Write FFh Audio_Write
Edited by juice2839
  • Like 1
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...