Re: [hatari-devel] MFP Interrupt Regression |
[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]
On Tuesday 18 June 2013 05:41, Nicolas Pomarède wrote: > Le 17/06/2013 02:36, David Savinkoff a écrit : > > Hi Nicolas, > > > > In hatari/src/psg.c :: PSG_Set_DataRegister() > > A GPIP0 Printer BUSY interrupt is initiated because a printer > > connected to the parallel printer port toggles the BUSY line. > > This can be used to generate an interrupt on a Atari ST. > > > > This feature worked in hatari 1.6.2 and earlier (since 2008) > > > > The MFP code has recently been changed and these interrupts > > stopped working. > > > > ( line 314 in hatari/src/psg.c ) > > /* Seems like we want to print something... */ > > Printer_TransferByteTo(PSGRegisters[PSG_REG_IO_PORTB]); > > /* Initiate a possible GPIP0 Printer BUSY interrupt */ > > MFP_InputOnChannel ( MFP_INT_GPIP0 , 0 ); *** NOT WORKING *** > > > > Note GPIP1 Falcon ACK interrupt (3 lines further down) > > is done, additionally, for the same reason. > > > > David > > Hello > > do you have a scenario I could use to see what's happening ? > > As MFP_InputOnChannel() is used and works in other parts, I don't > immediatly see what could be wrong. > > Nicolas Hi, I spent a couple hours looking through Hatari code the other day, then decided at pointing to where I thought the problem could be. Here is the test program. It is old stuff that I typed in from "Programmining the 68000" ISBN 0-89588-133-0 and ported to my Atari 520 ST. The code has a long delay before starting, allowing the floppy disk drive (and associated interrupts) to stop before the program takes over. The computer must be reset to exit this skeleton operating system. Extract the archive to an Atari directory then run the program. The program sends text to a parallel printer that looks like this: App2 -- Loop Complete App1 -- Delay Complete App2 -- Loop Complete App2 -- Loop Complete App1 -- Delay Complete App2 -- Loop Complete App1 -- Delay Complete App2 -- Loop Complete App2 -- Loop Complete App1 -- Delay Complete App2 -- Loop Complete App1 -- Delay Complete App2 -- Loop Complete App2 -- Loop Complete App1 -- Delay Complete App2 -- Loop Complete The latest Hatari sends, only, the first letter 'A'. Hatari 1.6.2 works (compare with latest Hatari). David
Attachment:
LBOS.zip
Description: Binary data
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |