* CTetris4e by Hayden Doan - July 17, 2009 *

(Pre-final Version - Auto_Repeat)



What's New in CTetris4e:



> Added Auto-Repeat for Left+Right Joystick control

> Fixed minor bugs.

> For NTSC/PAL play speed differences, please choose the Starting Level that suits your preference. 



Have Fun!

Hayden



-------------------------------------------

-------------------------------------------



* CTetris4d by Hayden Doan - July 15, 2009 *

(Pre-final Version)



What's New in CTetris4d:



INTRODUCTION:



In CTetris4d, I'm going back to the basic concept that CTetris4 was originally founded on - high game-playing quality.  With that in mind, I brought back the new "classic" play screen and greatly improved the joystick interface.  The level-based movement delay has been replaced by an ultra responsive & high precision single-shot joystick action.  The keyboard controls have also benefitted from the new control algorithms.



I have a few more new features that I would like to incorporate in the next and final version of CTetris4.  However, it will be a while before I can complete the next version due to limited time availability.  Therefore, I want to release what I have so far so that everyone can enjoy this pre-final version.



Notes (for CONTROLS):



1) Joystick controls now are single-shot action.

2) All user selections are now activated upon the release of actuation to improve accuracy.



EMULATOR NOTES (Atari800Win PLus 4.0): [Reminder]



I noticed that the included color palettes for the A8WP Emulator seem to be inaccurate.  I posted this question on AtariAge and CharlieChaplin (Andreas Koch) replied with some new palette files.  I tried the "OlivierN.ACT" (N=NTSC) palette file and the colors seem to be much more accurate now.  I recommend that you also give this new palette a try.  Thanks, Andreas.



Have Fun!

Hayden



-------------------------------------------

-------------------------------------------

* CTetris4c by Hayden Doan - July 4, 2009 *

(Independence Day Edition)



What's New in CTetris4c:



INTRODUCTION:



CTetris4c is dedicated to all the brave soldiers who paid the highest price to free and to protect our beloved country, the United States of America.  Freedom is not free.  God bless our troops!



The US Flag main screen is a patriotic tribute to my homeland and country.  I'm thankful to be an American where at least I know I'm free.  God bless the USA.



This release also commemorates the 25th Anniversary of Tetris.



ACKNOWLEDGEMENTS:



Thanks to everyone who tried out CTetris4a and left me helpful feedback on AtariAge.  I have (hopefully) incorporated the most requested changes in this revision.



Thanks to the folks at AtariAge for hosting this awesome website.



Thanks to Kemal Ezcan for sharing his excellent "Super Synthesizer" program with the Atari community.  It ROCKS!



Thanks to Glen Gutierrez and Antic Magazine (February 1985) for publishing an outstanding tutorial on getting the most realistic instrument sounds I've ever heard on the Atari computer.



MUSIC:



The "Popcorn Song" by Gershon Kingsley was selected for the background music.  It has always been one of my favorite instrumental tunes.  The Atari computer version was originally written by the multi-talented programmer and musician Kemal Ezcan in Atari BASIC circa 1984 and was released as a part of the "Super Synthesizer" diskette.  The original four-part harmony is kept unmodified here.  I personally do not prefer the sustained bass pedal note.  Lastly, the song reminds me of popping popcorn that sounds like little firecrackers going off - the perfect sound for the Fourth of July :)



SOUND EFFECTS:



In addition to getting bonus points for connecting four consecutive lines, the program will also play the first two measures of "U Can't Touch This" by MC Hammer as a congratulations to you!  {Please note that Sound Effects must be 'on' to hear this tune play}.  (See CONTROLS below for more details).



CONTROLS <New>:



Rotate     - Up Arrow,     Joystick: Up or <Fire Button>

HardDrop   - Spacebar,     Joystick: <Down & Fire Button> (at the same time)



Drop Sound       - <D> (Toggles Object Drop Sound on/off)

Sound Effects    - <E> (Toggles Sound Effects on/off.  A 'chirp' sound indicates Sound Effects are 'on').

Background Music - <M> (Toggles Background Music on/off.)



Notes (for CONTROLS):

 

1) The Default Sound settings are:  Music ('on'), Sound Effects ('on'), and Drop Sound ('off').

 

2) Setting Music 'off' will also turn Drop Sound & Sound Effects back to 'on'.  You can still use the "D" and "E" keys to set your sound effects preferences.



3) The user input cursor now will wrap around from end to end (instead of remaining at the end positions).



4) The "Next" object window is now defaulted to 'off'.  Use the "N" key to turn "Next" object display window on/off.  Be sure to give this command a try.



GAME PLAY:



The random object generator has been modified (improved?) to avoid two consecutive duplicate objects from being generated.



EMULATOR NOTES (Atari800Win PLus 4.0):



I noticed that the included color palettes for the A8WP Emulator seem to be inaccurate.  I posted this question on AtariAge and CharlieChaplin (Andreas Koch) replied with some new palette files.  I tried the "OlivierN.ACT" (N=NTSC) palette file and the colors seem to be much more accurate now.  I recommend that you also give this new palette a try.  Thanks, Andreas.



PROGRAMMING NOTES:



Please note that I am not comparing programming skills here as we know that Kemal is a well regarded professional programmer.  The comparisons are between the Atari BASIC and the Assembly languages and how the VBI Music Player benefited from having been written in Assembly.



The VBI subroutines for this release were completely rewritten in Assembly (Mac65) to add the background Music Player.  I made some improvements to Kemal's original Atari BASIC program algorithms due to the fact that I have more speed and flexibility using Assembly language.  The three most important differences are: 1) Atari BASIC is much too slow to be used in a VBI subroutine 2) More precise playback timing - Atari BASIC's interpretive code execution mode cannot maintain very accurate timing.  3) More consistent notes decay as speed of playback increases - Due to the limited speed of BASIC program execution, Kemal had to skip the notes decay loops to increase the speed of playback.  In the Assembly version, the notes decay loops are fully executed regardless of the playback speed.  Therefore, the musical quality remains consistent at all playback speeds.



The VBI codes were designed to be fully relocatable so that it can easily be integrated and compiled with Action!.  I had concerns about adding the VBI Music Player that it may adversely affect the game play quality because of the additional computer resource utilization.  With this thought in mind, I carefully optimized the VBI codes to be as efficient as possible.  The result is a 'happy ending' that the game play quality remained the unaffected with the background music playing.



The Plot, DrawTo, & Fill functions in this release are custom subroutines that are optimized for speed.  The previous CTetris4a version used the standard Atari graphics routines which are much slower and would have taken many seconds to draw the US Flag.  Press and (HOLD) down the "OPTION" console button before the transition from the Title Screen to the Main Screen to watch the US Flag being drawn in Real Time.  In the normal setup mode, the program will blank out the screen momentarily by disabling the ANTIC chip to allow the 6502 microprocessor to run without interruptions which is even ~30% faster.  The screen is made up of 40x192=7680 Bytes of RAM.



Have Fun!

Hayden