• Please review our updated Terms and Rules here

Tektronix 4054A with Option 30 - Cylon Attack work in progress game!

Hi Dave,

I did add HIT and MISS scores to the game.

I scaled the joystick input slightly lower than the max velocity of the Cylon - so some of them cannot be targeted and will be missed when they leave the screen.
At this point I want to apply what I've learned on this game to finish my Asteroids game.

I found that setting two of the same object at the same location doubles the intensity - that's why the Cylon is brighter than the scores.
It wouldn't be hard to double the score digits too - but maybe after I finish Asteroids.
 
I've been working on Cylon Attack for 4051, 4052 and 4054 computers with R12 Graphics Enhancement ROM or vintagetek.org MAXIROM with Fast Graphics ROM or @jdreesen 4052/4054 Multifunction ROM Pack with R12.

I have it working with my Flash Drive Vectrex joystick interface and just added the Tektronix 4952 Joystick support. The 4952 manual on bitsavers.org does NOT describe the expected output from BASIC of the 4952, although the Electrical Characteristics Table 2-1 indicates 1024 units of addressable information per axis.

I experimented with the R12 CALL "JGIN",M,X,Y,A$ function using my Tek 4952 joystick with the following test code where T$ is the R12 targeting circle object and M=10 msec in the CALL "JGIN" command. CALL "JGIN" will return to the BASIC program after 10 msec with the joystick X and Y values and A$="" or if a key is pressed before 10 msec has elapsed the key pressed will be returned in A$.

1390 PAGE
1400 CALL "RDRAW",T$,1,0,0
1410 CALL "JGIN",10,X,Y,A$
1420 PRINT X,Y,A$
1430 GO TO 1410

I found the following X and Y approximate values at these joystick positions:
X=65, Y=50 for joystick centered
X=35, Y=50 for joystick full left
X=95, Y=50 for joystick full right
X=65, Y=75 for joystick full up
X=65, Y=25 for joystick full down

My Flash Drive Vectrex code emulates the Vectrex joystick output values which are centered at 0,0 are negative for left and down and positive for up and right and returned as a single signed byte on Vectrex. Since Tek 4050 BASIC does not support integers, I return the X and Y values as numeric with no fractions up to +/-300 as that was the range of values returned by the Arduino after I "centered" the outputs. My game program converts the 4952 joystick values from absolute position to relative position and scales them to match my Vectrex joystick outputs with these two BASIC statements:

1000 REM CONVERT 4952 ABS X/Y TO RELATIVE
1010 P=(P-65)*10
1020 Q=(Q-50)*12

My Cylon Attack game for the 4050 computers with Fast Graphics or R12 Enhanced Graphics ROMs allows you to select whether you have a 4952 Joystick or Flash Drive with Vectrex joystick.

Here is a screenshot from the 405x Emulator - although it does not (yet) have 4952 or Flash Drive Vectrex joystick support (hint, hint @WaveyDipole ).
In the screenshot below you can see that I fired the lasers at the center target - but missed the Cylon.

1695132133698.png

I sped up the drawing of the targeting circles by creating a single R12 object for them that displays them in a fraction of a second on the 405x emulator - which should be the same speed as on the 4051. All the R12 objects are in a single BINARY File - loaded in less than a second on the 405x emulator and my 4052. Now I need to update my 4054A program to use that targeting object!

I have also attached Cylon Attack R12 to this post - in Flash Drive format.
 

Attachments

  • Cylon Attack R12.zip
    3.9 KB · Views: 0
I see I never finished this thread after I finished my Cylon Attack for 4054 with Option 30 Dynamic Graphics and Cylon Attack for 4051 and 4052 with R12 Fast Graphics.

Here is a photo of my 4052 with Flash Drive and Vectrex Gamepad playing Cylon Attack R12.

1697975636124.png

I used my new Canon M50 Mark II DSLR camera - hand held. The game action is so quick - it is hard to get a focused shot.

Here is a screen capture from my video of my 4054A Cylon Attack for Option 30 on my Option 31 Color Dynamic Graphics display:

Cylon Attack - game is finished!.jpg

With Option 30 displaying the Cylon, laser blasts and Hit/Miss Scores - the game does not need to clear the screen after each shot.

In the R12 version - I had to simplify the Cylon object to have it display in refresh mode - but I could not add refresh scores, so the screen must be cleared after each shot to update the scores.

My youtube video of my 4054A playing Cylon Attack now has 352 views (as of Oct 22, 2023):
Battlestar Galactica - Cylon Attack game
 
I just updated my Cylon Attack game for R12 graphics to include User Definable Keys - if you don't have the Tek 4952 joystick or Vectrex gamepad interface on my GPIB Flash Drive. This makes it work on any 4051, 4052 or 4054 computer with R12 ROM Pack - and it works on the latest 405x Emulator (which maps 4050 User Definable Keys to PC function Keys F1 to F10).

You will need to make the modifications to your 4952 joystick that I documented earlier in this thread - just rewiring, no soldering required. This mod disconnects the 4952 joystick X and Y pots from the sample and hold logic in the joystick and directly connects X and Y sliders to the connector - so you get instant position response for this game.

I also removed older program files (from my work in progress development of Cylon Attack) and renumbered the remaining programs and posted these updates on my github repo:

https://github.com/mmcgraw74/Tektronix-4051-4052-4054-Program-Files/tree/master/Battlestar_Galactica-and_Tektronix_4051

You can replace all the programs in the Battlestar folder on your Flash Drive with the files in this folder on github.
 
Back
Top