Hey Kev,
I think you have to clear the registers by writing a "0" to them before the "4". Also don't forget to clear Reg1 with a Reg1 = 0 at the beginning of the program.
I'd have to study this further but those pop out first...
John :-#)#
At 08:37 AM 11/03/2002 -0500, Kev wrote:
The following is a script I wrote to read PIA ports, specifically port A of IC5 on a Turkey Shoot board.
Interestingly enough this script worked, until I fixed the board. Now that the board is fixed the script doesn't work.
My Chip Selects are correct, and the R/W works. The game works in test mode too. What did I miss?
Thanks,
Kev
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! I/O TEST
!
! PIA Test Port A IC5
!
! Reg1 = Temporary offset from main
! Reg2 = Base address of PIA
!
! This routine sets Port A as Inputs which are routed to the Data Bus.
! The Intterupts are not turned on & thus don't require servicing for our
! test.
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
PROGRAM IOTST
REG2 = C980
SETPORT:
DPY-SETUP IC5 PORT A
EXECUTE DELAY ! Call delay for display
WRITE @ REG2 = 0 ! Write 0's to Data Direction Reg A
REG1 = REGF
INC REG1
INC REG1 ! Set REG1 to base address + 2
WRITE @ REG1 = 0 ! Write 0's to DDRB
DEC REG1 ! Set Reg1 to base +1
WRITE @ REG1 = 4 ! Write 4 to Port A CRA
INC REG1
INC REG1 ! Set Reg1 to base +3
WRITE @ REG1 = 4 ! Write 4 to Port B CRA
DPLOOP:
DPY- TEST COIN DOOR BUTTONS
READ @ REG2
IF REGE AND 40 = 40 GOTO SLAMIN
IF REGE AND 20 = 20 GOTO RIGHTC
IF REGE AND 10 = 10 GOTO RIGHTC
IF REGE AND 8 = 8 GOTO LEFTC
IF REGE AND 4 = 4 GOTO HSRESET
IF REGE AND 2 = 2 GOTO ADVANCE
IF REGE AND 1 = 1 GOTO AUTOM
GOTO DPLOOP
SLAMIN:
DPY-SLAM TILT #
EXECUTE DELAY
GOTO DPLOOP
RIGHTC:
DPY-RIGHT COIN #
EXECUTE DELAY
GOTO DPLOOP
LEFTC:
DPY-LEFT COIN #
EXECUTE DELAY
GOTO DPLOOP
HSRESET:
DPY-HIGH SCORE RESET#
EXECUTE DELAY
GOTO DPLOOP
ADVANCE:
DPY-ADVANCE PUSHED#
EXECUTE DELAY
GOTO DPLOOP
AUTOM:
DPY-AUTO IS MANUAL PRESSED #
EXECUTE DELAY
GOTO DPLOOP
- ----- Original Message -----
- From: John Robertson
- To: techToolsList@flippers.com
- Sent: Saturday, March 09, 2002 2:40 PM
- Subject: Re: 9010A tricks
- I thought I had too, or perhaps it was in email, still it is up on the site now... look for ID-A-DAT.s and .H for the two files (.H is compiled)
- John :-#)#
- At 12:53 PM 09/03/2002 -0500, Kev wrote:
- Forgive me, I thought John posted about a program that would let the 9010A ID Data/Address lines with the probe. Can anyone point me to that again?
- As an extension of that thought is there a function that would allow me to probe a point and generate a "memory Map" to tell me what address that point is active?
- Thanks,
- Kev