[Coco] Disto 4-in-1 clock2 with CocoSDC

Bob Devries devries.bob at gmail.com
Wed Jan 21 19:38:01 EST 2015


Hi Chris,

I followed your suggestion, and the MPI code in the clock2_disto4 module 
is now included, but the MPI.Slot value is set to 2 as if the makefile's 
value is ignored and the value from coco.d is used, but is being 
decreased by 1.

Sigh. I guess I can use dEd to fix it, but.... :(

Regards, Bob Devries
Dalby, QLD, Australia


On 22/01/2015 9:56 AM, Christopher R. Hawks wrote:
> On Wed, 21 Jan 2015 17:21:25 -0600
> "Christopher R. Hawks" <chawks at dls.net> wrote:
>
>> On Thu, 22 Jan 2015 08:23:27 +1000
>> Bob Devries <devries.bob at gmail.com> wrote:
>>
>>> Hi Robert,
>>>
>>> I also notice that there's no entry in the makefile to actually
>>> *build* the clock2_disto4 module. The makefile has an entry for two
>>> software clocks (50 and 60Hz), the cloud9 and the BNB clock2
>>> modules.
>>>
>>> I notice that the other clock2 entries have something like
>>> -DCLOUD9=1 or -DBNB=1. However, I can't see where this is used.
>>> Should I set the clock2_disto4 to -DDISTO or -DDISTO4.
>>>
>>> And yet, it appears that there is a clock2 module in the
>>> NITROS9/6309L2/CLOCKS directory on the created disk image. That
>>> image doesn't read the clock since I suspect that the default
>>> clock2 module is the 60Hz software clock.
>>>
>>> You would be forgiven if you think I'm floundering here. :)
>>>
>>> Regards, Bob Devries
>>> Dalby, QLD, Australia
>>>
>>>
>>> On 21/01/2015 2:11 PM, Robert Gault wrote:
>>>> Bob Devries wrote:
>>>>> Hi Robert,
>>>>>
>>>>> I have had a look at the source of clock2_disto4.asm and found
>>>>> that it is indeed
>>>>> set up to be slot-ready, but it needs to have MPIFlag set to the
>>>>> slot number
>>>>> (1-4). Now I'm left wondering where this is set? I have the idea
>>>>> that it should
>>>>> be in one of the rules.mak? Would that be correct?
>>>>>
>>>>> Regards, Bob Devries
>>>>> Dalby, QLD, Australia
>>>>>
>>>>>
>>>>
>>>> Look at the level2/coco3/modules/makefile for example and you will
>>>> see
>>>>
>>>> CLOCKSMART      = -DRTCSmart=1 -DMPIFlag=1
>>>>
>>>> None of the other clock2 files have the flag set and you would
>>>> need to adjust the makefile to suit your preferences.
>>>>
>>>> MPIFlag does seem to be used to indicate the slot holding the RTC.
>>>> That would save code but a search routine would be better since
>>>> you would not need to recompile if the clock were moved from a
>>>> default slot#.
>>>>
>>>> Note that clock2_smart.asm does not use MPIFlag even though the
>>>> makefile does but always searches through all four slots looking
>>>> for the RTC.
>>>>
>>>> Robert
>>>>
>>>>
>>>
>>
>> Bob:
>>
>> 	Add this line after the '# Clocks' line in the makefile:
>> clock2_disto4: clock2_disto4.asm
>> 	$(AS) $(AFLAGS) $(ASOUT)$@ $< -DMPIFlag=1
>>
>> Change the MPIFlag to the slot number yours is in ( 1 - 4 ).
>>
>> 	I agree with Robert that all clocks should search for their
>> hardware in their Init routine, but, this should get you going in the
>> mean time.
>>
>> BTW: the module is built because it is listed in the CLOCKS line near
>> the top of the file, and the ALLOBJS line includes $(CLOCKS), and the
>> requirement for the rule all: is $(ALLOBJS). Which includes $(CLOCKS)
>> and so, includes clock2_disto4.
>>
>> 	Only modules with special parameters need a separate rule
>> (like we just created). Others use one of the rules in rules.mak. (The
>> clock2_disto4 matches the last rule in rules.mak.)
>>
>>
>> Christopher R. Hawks
>> HAWKSoft
>
> 	Ooppss!! add the -DMPI.Slot=4 (your slot #) after the
> -DMPIFlag=1
>
>
> Christopher R. Hawks
> HAWKSoft
>


More information about the Coco mailing list