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

VBL Interrupts - more findings



The plot thickens... The more I read Apple 2e Tech. Ref manual, the less I think there will be an universal timer interrupt source for all apple 2s prior to the GS. The Apple 2C has handy soft-switches (addresses tied to I/O operations) to control VBL interrupts. It also has more soft-switches than the //e. The enhanced Apple //e handles VBL interrupts only if there's a memory card in its auxiliary slot. I have not found any way to control this interrupt source yet - perhaps it's turned on by default in the boot process or when 80 column display is enabled. One way to test this is to write a small interrupt handler in assembler which toggle the speaker output. We should hear a 60 Hz tone if interrupts are present and handled. Another way is to probe IRQ* pin on the 65C02 with a logic probe - a more reliable test. The Apple Mouse card also generates VBL interrupts for smooth cursor movements but little is said about mouse firmware in the manual so I won't speculate about it. The mouse card could be a requirement for ][+ users. Mouse support would be cool for the user interface anyway :).

I don't have my //e clone at hand right now so I couldn't try anything now and the GS (my development machine) is too different when it comes to interrupt support.

(Incidentally, my Sprite Card does generate an interrupt on vertical retrace. I had it enabled by accident and it created havoc... on the Pascal program I was writing to control it! I'm not proposing this as an interrupt source to support Contiki :)

Hope this help, this is not an easy one to solve.

Yves