User Tools

Site Tools


en:amstenis

AMSTENIS

Info

Author Amstrad User
Computer Amstrad PCW 8256 / 8512 / 9512
Year 1986
Gender Sports
Controls Keyboard
Languages Spanish
Status Preserved

Screenshots

Description

The features of this dialect force cursor control through escape codes, which are used to control all display features.

Keep in mind that when you exit the program by pressing STOP, the machine remains in 24 x 80 mode, with the cursor hidden. To recover the usual characteristics, just type:

Print chr$(27)“e”chr$(27)“b”chr$(0)chr$(27)“y”

Amstenis is a tremendously simple game: a ball and two rectangular sticks that we will have to move from top to bottom to hit the ball and send it to the opposite field. The goal is to sneak the ball into the rival field and get points. One or two players can be selected. In the first case we play against the machine and in the second against another opponent (2 humans).

Listing

  • Listing - AMSTENIS.BAS
10 REM ********************************
20 REM * AMSTENIS - Versin PCW 8256  *
30 REM *         (c) - AMSTRAD USER        *
40 REM ********************************
50 REM 
60 REM *** pantalla opciones  ***
70 PRINT CHR$(27)"2"CHR$(0);
80 PRINT CHR$(27);"0";CHR$(27);"f" 
90 PRINT CHR$(27);"x"; 
100 PRINT CHR$(27);"E";CHR$(27);"H"; 
110 PRINT CHR$(27);"Y";CHR$(32+4);CHR$(32+30); 
120 PRINT CHR$(27);"r"; 
130 PRINT "A M S - T E N I S"
140 PRINT CHR$(27);"u"; 
150 PRINT CHR$(27);"Y";CHR$(32+8);CHR$(32+27); 
160 PRINT"Para mover las raquetas:" 
170 PRINT:PRINT:PRINT 
180 PRINT TAB(25)"Jugador 1:"TAB(45)"Jugador 2:" 
190 PRINT 
200 PRINT TAB(5)"ARRIBA _______________ (Q) _______________ (P)"
210 PRINT 
220 PRINT TAB(5)"ABAJO ________________ (A) _______________ (L)"
230 PRINT:PRINT:PRINT:PRINT:PRINT 
240 PRINT TAB(25)"PULSE  ( 1 )  o  ( 2 )  JUGADORES." 
250 tecla$=INKEY$:IF tecla$<>"1" AND tecla$<>"2" THEN 250 
260 IF tecla$="2" THEN 320 
270 n=1:PRINT CHR$(27);"E";CHR$(27);"H"; 
280 INPUT "Nombre (Max. 10 caracteres.)";nom1$ 
290 nom1$=UPPER$(LEFT$(nom1$,10))
300 nom2$="AMSTRAD"
310 GOTO 370
320 PRINT CHR$(27)"E"CHR$(27)"H";
330 INPUT "Jugador 1 (Max. 10 caracteres.)";nom1$ 
340 nom1$=UPPER$(LEFT$(nom1$,10))
350 INPUT "Jugador 2 (Max. 10 caracteres.)";nom2$
360 nom2$=UPPER$(LEFT$(nom2$,10))
370 REM
380 REM **** DIBUJA EL CAMPO ****
390 PRINT CHR$(27);"b";CHR$(0);:REM PRINT CHR$(27);"c";CHR$(0);
400 PRINT CHR$(27);"E";CHR$(27);"H";
410 PRINT TAB(20) nom1$ TAB(60) nom2$ 
420 PRINT 
430 PRINT CHR$(134);STRING$(78,138);CHR$(140); 
440 FOR lazo=1 TO 19
450 PRINT CHR$(27);"Y";CHR$(32+1+lazo);CHR$(32+1) 
460 PRINT CHR$(133)TAB(80)CHR$(133) 
470 NEXT 
480 PRINT CHR$(27);"Y";CHR$(32+21);CHR$(32+1) 
490 PRINT CHR$(131);STRING$(78,138);CHR$(137); 
500 PRINT CHR$(27);"b";CHR$(63);:PRINT CHR$(27);"c";CHR$(0);
510 raq$=CHR$(149)+CHR$(8)+CHR$(10)+CHR$(149):clr$=" "+CHR$(8)+CHR$(10)+" "
520 x1=5:y1=11:x2=75:y2=11
530 PRINT CHR$(27);"Y";CHR$(32+y1);CHR$(32+x1);:PRINT raq$
540 PRINT CHR$(27);"Y";CHR$(32+y2);CHR$(32+x2);:PRINT raq$
550 REM 
560 REM ********* COMIENZA EL JUEGO ***********
570 REM 
580 dx=(-1)^(INT(RND*2)):dy=INT(RND*3)-1:dx=dx*2:yb=12+dy 
590 IF dx>0 THEN xb=x1+1 ELSE xb=x2-1 
600 PRINT CHR$(27);"Y";CHR$(32+0);CHR$(32+35);
610 PRINT USING"##";p1
620 PRINT CHR$(27);"Y";CHR$(32+0);CHR$(32+75);
630 PRINT USING"##";p2 
640 IF fin=1 THEN GOTO 900:REM FINAL DEL PARTIDO 
650 a$=UPPER$(INKEY$) 
660 PRINT CHR$(27);"H";:PRINT " " 
670 IF a$="Q" AND y1>3 THEN PRINT CHR$(27);"Y";CHR$(32+y1);CHR$(32+x1);:PRINT clr$;:y1=y1-1:GOTO 690 
680 IF a$="A" AND y1<20 THEN PRINT CHR$(27);"Y";CHR$(32+y1);CHR$(32+x1);:PRINT clr$;:y1=y1+1:GOTO 690 
690 PRINT CHR$(27);"Y";CHR$(32+y1);CHR$(32+x1);:PRINT raq$; 
700 IF n=1 THEN 740
710 IF a$="P" AND y2>3 THEN PRINT CHR$(27);"Y";CHR$(32+y2);CHR$(32+x2);:PRINT clr$;:y2=y2-1:GOTO 730
720 IF a$="L" AND y2<20 THEN PRINT CHR$(27);"Y";CHR$(32+y2);CHR$(32+x2);:PRINT clr$;:y2=y2+1
730 GOTO 770 
740 IF dy=0 AND y2=yb THEN 770 
750 IF yb>y2+1 THEN PRINT CHR$(27);"Y";CHR$(32+y2);CHR$(32+x2);:PRINT clr$;:y2=y2+1:GOTO 770
760 IF yb<y2 THEN PRINT CHR$(27);"Y";CHR$(32+y2);CHR$(32+x2);:PRINT clr$;::y2=y2-1 
770 PRINT CHR$(27);"Y";CHR$(32+y2);CHR$(32+x2);:PRINT raq$; 
780 IF xb+dx/2=x1 AND ((yb+(dy=0)*-dy)=y1 OR (yb+(dy=0)*-dy)=y1+1) THEN PRINT CHR$(7);:dx=-dx:dy=INT(RND*3)-1 
790 IF xb+dx/2=x2 AND ((yb+(dy=0)*-dy)=y2 OR (yb+(dy=0)*-dy)=y2+1) THEN PRINT CHR$(7);:dx=-dx:dy=INT(3*RND)-1 
800 IF yb+dy=2 OR yb+dy=22 THEN dy=-dy:IF dy<>0 THEN PRINT CHR$(7); 
810 IF xb<x1 OR xb>x2 THEN 850:REM PUNTO 
820 xb1=xb+2*dx: yb1=yb+dy:PRINT CHR$(27);"Y";CHR$(32+yb);CHR$(32+xb);:PRINT " "; 
830 PRINT CHR$(27);"Y";CHR$(32+yb1);CHR$(32+xb1);:PRINT CHR$(188);:xb=xb1:yb=yb1 
840 GOTO 650 
850 REM ** PUNTO ** 
860 PRINT CHR$(27);"Y";CHR$(32+yb);CHR$(32+xb);:PRINT " "; 
870 FOR t=1 TO 5:PRINT CHR$(7);:NEXT:FOR t=1 TO 500:NEXT 
880 IF xb<x1 THEN p2=p2+1:IF p2=21 THEN fin=1:GOTO 580 ELSE GOTO 580 
890 p1=p1+1: IF p1=21 THEN fin=1:GOTO 580 ELSE GOTO 580
900 REM *********** FINAL ***********
910 PRINT CHR$(27)"H"CHR$(28)"E";
920 PRINT CHR$(27)"b"CHR$(63); 
930 DATA E,N,H,O,R,A,B,U,E,N,A,","," "
940 DATA H,A,S," ",G,A,N,A,D,O,"."
950 DATA <,P,u,l,s,a," ",u,n,a," ",t,e,c,l,a," ",p,a,r,a," ",v,o,l,v,e,r
960 DATA " ",a," ",e,m,p,e,z,a,r,".", >
970 RESTORE 930 
980 PRINT CHR$(27);"Y";CHR$(32+6);CHR$(32+10); 
990 FOR lazo=1 TO 13:READ le$:PRINT le$;" ";CHR$(7);
1000 FOR t=1 TO 50:NEXT t:NEXT lazo 
1010 IF p1=21 THEN gan$=nom1$ ELSE gan$=nom2$ 
1020 FOR lazo=1 TO LEN(gan$)
1030 PRINT MID$(gan$,lazo,1);" ";CHR$(7);
1040 FOR t=1 TO 50:NEXT t:NEXT lazo
1050 PRINT:PRINT:PRINT:PRINT TAB(20)" "; 
1060 FOR lazo=1 TO 11:READ le$ 
1070 PRINT le$;" "; CHR$(7);
1080 FOR t=l TO 50:NEXT t:NEXT lazo 
1090 PRINT: PRINT: PRINT: PRINT TAB (10)"";
1100 FOR lazo=1 TO 40: READ le$
1110 PRINT le$;CHR$(7);
1120 FOR t=1 TO 50:NEXT t:NEXT lazo 
1130 WHILE INKEY$"":WEND
1140 RUN

Controls

  • Player 1
       Q = UP
       A = DOWN
  • Player 2
       P = UP
       L = DOWN
       

Loading the program

 1.- Insert the CP/M disc on side 2
 2.- Write BASIC and wait for it to load
 3.- Remove the CP/M disk and insert the disk containing the Amstenis game
 4.- Type run "Amstenis" and press the "ENTER" key

Extras

  • Listing of the program in high circulation magazines of the time.

amstenis_programa_01.jpg amstenis_programa_02.jpg amstenis_programa_03.jpg amstenis_programa_04.jpg

Download

  • Amstenis (game in dsk format, compressed with zip)
en/amstenis.txt · Last modified: 2022/06/29 02:07 by jevicac