@asman, post #7
@Norbert, post #8
@Norbert, post #8
move.w #$ff00,$dff034
DOKE $dff0034,$ff00 secondButton = 0
btst #6,$dff016 bne .1 st secondButton .1 move.w #$c000,$dff034
' czekanie na ramke val = Peek($dff0016) and 64 if (val = 0) then secondButton = 1 Doke($dff034, $c000)
@asman, post #10
While Not Key State($45) Wait Vbl Doke $DFF034,$FF00 Rem PIERWSZY PORT If Deek($DFF016) and $400 : Rem 10 BIT Rem 2 FIRE NIE WCISNIETY Else Rem 2 FIRE WCISNIETY Doke $DFF180,$F00 End If Rem DRUGI PORT If Deek($DFF016) and $4000 : Rem 14 BIT Rem 2 FIRE NIE WCISNIETY Else Rem 2 FIRE WCISNIETY Doke $DFF180,$F00 End If Wend End
@tukinem, post #14
@tukinem, post #16
@asman, post #17
Table 8-4: POTGO ($DFF034) and POTGOR ($DFF016) Registers Bit Number Name Function ------ ---- -------- 15 OUTRY Output enable for bit 14 (1=output) 14 DATRY data for port 2, pin 9 13 OUTRX Output enable for bit 12 12 DATRX data for port 2, pin 5 11 OUTLY Output enable for bit 10 10 DATLY data for port 1, pin 9 (right mouse button ) 09 OUTLX Output enable for bit 8 08 DATLX data for port 1, pin 5 (middle mouse button ) 07-01 X chip revision identification number 00 START Start pots (dump capacitors, start counters)
@tukinem, post #19
aby wyczyścić bity 0-7, a ustawić bity 8-15
A może tu należy dla każdego fire odpowiednio dodatkowo sterować poprzez OUTLx/DATLx jak w podają te rejestry hardware?
@selur, post #21
@tukinem, post #22
sprawdziłem bez Doke $dff034,$ff00 i wtedy wystarczy raz wcisnąć fire a reaguje tak jakby był cały czas wciśnięty
@selur, post #23
While Not Key State($45) Wait Vbl Doke $DFF034,$FF00 Rem PIERWSZY PORT If(Deek($DFF016) and $400)=0 : Rem 10 BIT Rem 2 FIRE WCISNIETY Doke $DFF180,$F00 End If Rem DRUGI PORT If(Deek($DFF016) and $4000)=0 : Rem 14 BIT Rem 2 FIRE WCISNIETY Doke $DFF180,$F00 End If Wend End
WBStartup BLITZ While NOT RawStatus($45) VWait If Joyb(0)=2 ; PORT 1 MOVE.w #$f00,$dff180 Endif If Joyb(1)=2 ; PORT 2 MOVE.w #$f0,$dff180 Endif Wend AMIGA End
@tukinem, post #24
@djpiotrs, post #25
Dim P0(1) : Dim P1(1) While Not Key State($45) Wait Vbl P0(0)=0 : P0(1)=0 : P1(0)=0 : P1(1)=0 Doke $DFF034,$FF00 Rem PIERWSZY PORT If Fire(0) Then P0(0)=1 If(Deek($DFF016) and $400)=0 Then P0(1)=1 Rem DRUGI PORT If Fire(1) Then P1(0)=1 If(Deek($DFF016) and $4000)=0 Then P1(1)=1 Locate 0,0 Print " PORT" Print " 0 1" Print P0(0),P0(1),P1(0),P1(1) Wend End