Jump to content

Dmitry's Blog - Got sound working


Recommended Posts

It seems I started a blog for testing some interface between the A8 and AtariAge.

However, I'm spending most of my time on Frake of Bemer, which is an update to Worm of Bemer.

First, I'm rewriting the original basic game in C/Assembler...and mostly Assembler.

Then I'm taking the (now 33 years old) challenge to improve the game. In the original Compute! magazine article, readers were challenged to improve the game by saving high scores to disk, and having the doors exit be meaningful and lead to individual rooms. (in the current game it ups the level, but all 3 open doors lead to the same room).

I'm changing the title too, since my game will have new graphics and animations and they are of a snake, not a worm.

So where am I at - well the original game had for display lists, I have two done. Yesterday I got a sound routine in place... The welcome screen is in place, the 'get ready' screen is in place. I've already done the score routine, the joystick read routine. The original BASIC game did have one ML routine, that was a fast copy char...oddly I need to write that still- I could just use the original, I guess...lol

I plan to release a mid-way version, where once the original Worm of Bemer is "ported" to the new language, I will release that for download. However, when I do turn to adding my own features, even though I promised, promised....stated in the forums and swore before everyone that I wouldn't allow scope creep - I'm adding some new features.

I can't help it....what I'm finding is I don't philosophically agree with the original joystick read subroutine. I believe you should poll the joystick in a tight loop, and only act on the polling per the timing loop....that way, if the user does respond AT ANY TIME with a joystick change that would prevent failure - say not crashing into the wall, you should know about it, and act upon it. That will make the game more responsive to user input.

I may explain or post my code in another blog. Secondly, as I found last night, the original game played some sounds and then "delayed" with a FOR NEXT LOOP - no way I'm doing that, that only works if you know exactly the speed of the machine - and Atari's can be accelerated and you don't know, the machine might be running at 20mhz :) You can't code like that, so I need to put a proper timer and vbi routine to handle sound playing.

Link to comment
Share on other sites

This topic is now closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...