[Coco] 6809 / General CPU question

Stephen H. Fischer SFischer1 at Mindspring.com
Sat Feb 19 21:58:44 EST 2011


Hi,

Well I found my CoCo 2 and CoCo 3 Service manuals.

What I found does not confirm my understanding.

But what I wanted to add was as you say:

> answer is that is MUST come from ROM. But FFFE/FFFF is not code; it's the 
> address to start executing code at. Of course, that must also be in ROM to 
> be useful.

I could not find where the effective address for the vectors is located 
later and what register values control this.

The CoCo 2 manual says "if the CPU reads FFFF it will actually read the 
contents of BFFF".

If the ROM is switched out will BFFF come from RAM?

SHF

----- Original Message ----- 
From: "William Astle" <lost at l-w.ca>
To: "CoCoList for Color Computer Enthusiasts" <coco at maltedmedia.com>
Sent: Saturday, February 19, 2011 6:19 PM
Subject: Re: [Coco] 6809 / General CPU question


> On 11-02-19 06:59 PM, Stephen H. Fischer wrote:
>> Hi,
>>
>> I guess I am not communicating well.
>>
>> On power on there must be a location to start execution. As nothing is in 
>> RAM yet it must be ROM code.
>>
>> I do not have the books handy to check so it might be that the ROM 
>> addresses point to ROM code that uses RAM locations to continue. But I 
>> think that was a different 6x0x machine. (KIM, SYM, FLEX 680x ...)
>
> Definitely not the coco. On all models of the coco, FFFx is always routed 
> to ROM, regardless of memory map mode.
>
> Now, to be completely clear, the original question was "where does the 
> value at FFFE/FFFF come from when the computer is powered on". The answer 
> is that is MUST come from ROM. But FFFE/FFFF is not code; it's the address 
> to start executing code at. Of course, that must also be in ROM to be 
> useful. What is mapped to FFFE/FFFF after the ROM has started executing 
> has nothing to do with the original question so whether it is copied to 
> RAM or something else does not answer the question.
>
> Obviously, with the right hardware gimmicks, a machine can be devised that 
> loads RAM at FFFx from an internal ROM during the RESET phase, but this 
> has to be done in hardware, not in ROM, for it to work during a cold 
> start.
>
> I know it's possible to devise a machine that can switch the vector table 
> to RAM as part of a memory map control. However, the coco is not such a 
> machine.
>
> Also, it's obvious that the boot ROM can do whatever it wants with the 
> system including loading stuff into RAM and executing it. (Loading OS9, 
> for instance.)
>
>>
>> What the CPU sees in it's address space when powered on can be quite 
>> different in many ways from that controlled by hardware registers later.
> Obviously. But that is irrelevant to the question at hand which was about 
> the power up state.
>
>>
>> When OS-9 is running and some other programs also is all RAM, all 64K. 
>> The DECB ROMs have been switched out.
> Except for the interrupt vector table at FFFx which always maps to ROM on 
> the coco.
>
>>
>> SHF
>>
>> ----- Original Message ----- From: "William Astle" <lost at l-w.ca>
>> To: <coco at maltedmedia.com>
>> Sent: Saturday, February 19, 2011 5:32 PM
>> Subject: Re: [Coco] 6809 / General CPU question
>>
>>
>>> On 11-02-19 06:28 PM, Stephen H. Fischer wrote:
>>>> Hi,
>>>>
>>>> But the ROM is running at power on!
>>>>
>>>> It is a little tricky switching the FFFE, FFFF area from ROM to RAM but 
>>>> it is done at power on.
>>>>
>>> That turns out not to be the case. Have you ever tried to change the 
>>> values in the vector table? It's not possible.
>>>
>>> Besides, the time under discussion is at CPU startup when nothing has 
>>> had a chance to copy anything to RAM yet! The vector fetched from 
>>> FFFE/FFFF MUST be in ROM or something similar or the system could never 
>>> bootstrap.
>>>
>>> -- 
>>> Coco mailing list
>>> Coco at maltedmedia.com
>>> http://five.pairlist.net/mailman/listinfo/coco
>>
>>
>> -- 
>> Coco mailing list
>> Coco at maltedmedia.com
>> http://five.pairlist.net/mailman/listinfo/coco
>
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> http://five.pairlist.net/mailman/listinfo/coco 




More information about the Coco mailing list