Changes

Tennis Cup 2 (cartridge)

2,391 bytes added, 00:07, 7 June 2023
/* Analog Joystick Support */ typo
[[File:Tennis cup 2 intro.png|384px|thumb|right]]
 
'''Tennis Cup 2''' is the Cartridge version of '''Tennis Cup''', a tennis game on CPC (old), both games produced by [[Loriciel]].
 
 
Certainly the best looking Tennis game on Amstrad (in cartridge version).
 
 
== Cover ==
You can download in CPR for use in emulators and BIN from CPCmania ( See the links ).
==Analog JoystickVideos == Quick look by Novabug This games is pehaps the only one on Amstrad GX4000/Plus range to enable the use of an [[Analog Joysticks{{#ev:youtube|VQgmT-HRt2Y| Analog Joystick]], for the 2nd player.340}}
<nowiki>25b2 010ef4 ld bc,0f40eh25b5 ed49 out (c),c25b7 06f6 ld b,0f6h25b9 ed78 in a,(c)25bb e630 and 30h25bd 4f ld c,a25be f6c0 or 0c0h25c0 ed79 out (c),a25c2 ed49 out (c),c25c4 04 inc b25c5 3e92 ld a,92h25c7 ed79 out (c),a25c9 c5 push bc25ca cbf1 set 6,c==Comparison==
25cc 3e09 ld a,09h25ce b1 or c25cf 06f6 ld b,0f6h25d1 ed79 out (c),a25d3 06f4 ld b,0f4h25d5 ed78 in a,(c)25d7 2f cpl 25d8 328280 ld (8082h),a ;; joy 0[[File:Tennis cup cpc intro.png]][[File:Tennis cup cpc game.png]]
25db f5 push af25dc 3e06 ld a,06h25de b1 or c25df 06f6 ld b,0f6h25e1 ed79 out (c),a25e3 06f4 ld b,0f4h25e5 ed78 CPC version in a,(c)25e7 2f cpl 25e8 328380 ld (8083h),a ;; joy 125eb d1 pop de25ec b2 or d25ed 328680 ld (8086h),amode1.
25f0 3e03 ld a,03h25f2 b1 or c25f3 06f6 ld b,0f6h25f5 ed79 out (c),a25f7 06f4 ld b,0f4h25f9 ed78 in a,(c)25fb 2f cpl 25fc 328480 ld (8084h),a ;; pause?[[File:Tennis cup 2 cartridge game 1.png]][[File:Tennis cup 2 cartridge game 2.png]]
25ff c1 pop bcCartridge version in Mode0 + Hardwired sprites.2600 3e82 ld a,82h 2602 ed79 out (c),a== Analog Joystick Support ==2604 05 dec b 2605 ed49 out (c)This game is perhaps the only one on Amstrad GX4000/Plus range that supports an [[Analog Joysticks|Analog Joystick]],c2607 01b87f ld bchowever,7fb8hit converts the analog signals to digital signals by software. In two-player mode, the game can be controlled by:260a ed49 out * Digital Joystick #1 and Digital Joystick #2or alternately (cselectable in Options),c* Analog Joystick #1 and Digital Joystick #2260c 0e00 ld cThat feature is intended for people who own one digital stick,00h260e 3a0868 ld aand one analogue stick (rather than two digital ones). In the "analog" mode,Digital Joystick #1 is not used (6808hbecause its button inputs would conflict with Analog Joystick #1) ;; analogue input channel 02611 d61f sub 1fh2613 fe14 cp 14h2615 f21f26 jp p,261fh2618 feec cp 0ech261a fa2326 jp m,2623h261d 1806 jr 2625h 261f cbd9 set 3,c ;; right2621 1802 jr 2625h.
2623 cbd1 set Disassembly of the joystick code in Tennis Cup 2,c ;; left:
2625 3a0968 ld bc,0f40eh out (c),c ld b,0f6h in a,(c) and 30h ld c,a or 0c0h out (c),a out (c),c inc b ld a,92h out (c),a push bc set 6,c ld a,09h ;keyb.row 9 ;\ or c ; ld b,0f6h ; out (6809hc) ,a ;read digital joystick 1 ld b,0f4h ; analogue input channel in a,(c) ; cpl ; ld (8082h),a ;store joy 1 ;/2628 d61f push af ;push joy 1 ld a,06h ;keyb.row6 ;\ or c ; ld b,0f6h ; out (c),a ; read digital joystick 2 ld b,0f4h ; in a,(c) ; cpl ; ld (8083h),a ;store joy 2 ;/ pop de ;pop joy 1 ;\ or d ;merge joy 2 ; merge digital joystick 1+2 ld (8086h),a ;store both ;/ ld a,03h ;keyb.row3 ;\ or c ; read pause button ld b,0f6h ; (aka "P" key) out (c),a ; (row3.bit3) ld b,0f4h ; (bit3 still needs to be in a,(c) ; isolated elsewhere) cpl ; ld (8084h),a ;store pause ;/ pop bc ld a,82h out (c),a dec b out (c),c ld bc,7fb8h out (c),c ld c,00h ;digital-joystick-style bits ld a,(6808h) ;ADC0 ;+00h..+3Fh ;\ sub 1fh ;-1Fh..+20h ;262a fe14 cp 14h ;262c f23926 jp p,2639h261fh_RIGHT ;+14h..+20h ;262f feec cp 0ech ;-14h ; read analog joystick 1,2631 f23b26 jp m,2623h_LEFT ;-1Fh..-15h ; X-axis (ADC0) jr 2625h_X_DONE ;-14h..+13h ; 261f_RIGHT: ; set 3,c ;bit3=right (as on digital joy) ; convert to digital left/right jr 2625h_X_DONE ; 2623_LEFT: ; set 2,c ;bit2=left (as on digital joy) ; 2625_X_DONE: ;/ ld a,(6809h) ;ADC0 ;+00h..+3Fh ;\ sub 1fh ;-1Fh..+20h ; cp 14h ; jp p,263bh2639h_DOWN ;+14h..+20h ;2634 cbc1 cp 0ech ;-14h ; read analog joystick 1, jp p,263bh_Y_DONE ;-14h..+13h ; Y-axis (ADC1) 2634h_UP: ;-1Fh..-15h ; set 0,c ;bit0=up (as on digital joy) ; convert to digital up /down2636 c33b26 jp 263bh263bh_Y_DONE ;2639 cbc9 2639h_DOWN: ; set 1,c ; ; bit1=down(as on digital joy) ; 263bh_Y_DONE: ;/ ld a,(8082h) ;joy1 ;\ and 10h ;joy1 fire ; use digital joystick 1 fire or c ; as analog joystick 1 fire ld (8085h),a ;store A/D converted analog ;/
263b 3a8280 ld a,(8082h) ;; joy 0 fire.
263e e610 and 10h
2640 b1 or c
2641 328580 ld (8085h),a
</nowiki>
The keyboard is read to determine the state of the digital joysticks and the P button (pause button on gx4000 console).
1,087
edits