simulavr-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Simulavr-devel] ATMega8 class definition


From: Petr Hluzín
Subject: Re: [Simulavr-devel] ATMega8 class definition
Date: Sun, 24 Oct 2010 17:18:42 +0200

Hi people

On 17 October 2010 21:35, Petr Hluzín <address@hidden> wrote:
> Hi Thomas
>
> On 17 October 2010 19:09, Thomas Klepp <address@hidden> wrote:
>> Hi Ivica,
>>
>>> I think the atmega16_32 interrupt vectors for EEPROM Ready are not
>>
>> Not only this interrupt, also some other around ... My mistake, I've
>> compared mostly register set but not interrupt vector table too.
>
> By looking at the datasheets:
> The set of available vectors is the same. Just the ordering is different.
> (One could move "20 $026 TIMER0 COMP Timer/Counter0 Compare Match"
> between 9 and 10 and move "19 $024 INT2 External Interrupt Request 2"
> between 3 and 4 the tables would be identical.)
>
> Unfortunately this means all vectors (besides INT0, INT1 and SPM_RDY)
> have differing indexes.
>
> How to fix that?
>
> I already made separate constructors for the different 'eeprom' and
> 'stack' initialization in commit [1]. However doing the same for all
> other peripherals' interrupts would duplicate much code. I guess I
> should revert my commit, rename the 'stack11bit' to 'atmega16' and
> make the vector indexes conditional on the argument, probably using C
> ternary operator.
>
> Another proposal?
> Are there more similar devices in family with ATmega16/ATmega32?

Commited the proposed solution.
http://git.savannah.gnu.org/cgit/simulavr.git/commit/?id=122d192a1217d3a17094ed025f557f7bd7efa09b

-- 
Petr Hluzin



reply via email to

[Prev in Thread] Current Thread [Next in Thread]