Jump to content
  • entries
    41
  • comments
    373
  • views
    63,829

About this blog

A rebirth of the Victorian serial novel

Entries in this blog

bB 1.1 beta build release B

Here is another release that should be close enough that programmers can get started on some games.   This release requires a test version of Stella, posted in the previous blog entry.   Included in this release: Support for 10 sprites (player0-player9) pfcolors: now works Background colors per line supported (uses new bkcolors: command) scorecolor: command to define score colors per line Comments with semicolon now supported C-style multiline comments with /* and */ Us

batari

batari

batari Basic 1.1 beta - with DPC+ kernel

It's been nearly four years since the 1.0 release of bB, so it's about time for another. Many things need to be done, but I've gotten over the big hump of letting bB take advantage of special Melody/Harmony features.   We developed the DPC+ bankswitching scheme some time ago. DPC+ is based on DPC, the chip in Pitfall II. DPC+ has evolved a bit since its initial release, and the changes will be documented soon.   For now, I've finally got a functioning DPC+ kernel in bB. Currently, all ke

batari

batari

2600 LAN

I originally wrote a detailed blog entry about this, but lost it due to accidentally closing the browser window, so this one will be brief unless I feel like recreating all that effort again.   Anyway, this is a proof-of-concept demo of a multiplayer game on two 2600s connected via the right joystick port. It's Adventure, where one console controls our hero and the other controls an enemy (dragons or the bat, and these are swapped every few seconds.) The cable may be constructed by anyone wi

batari

batari

2600 Compression redux

This is actually quite different than the first topic on 2600 compression.   Let's suppose we have some RAM available, and want to crunch a 4k bank of arbitrary 2600 code/data by as much as feasible, assuming the decompressor will live within some of the space we have freed. Therefore the decompressor should be simple, but compression can be as complicated as a modern computer can handle.   I have analyzed various 2600 binaries, and I'm showing the most common 5 bytes are typically A9, A5,

batari

batari

512k Superbanking with TTL

A thought occurred to me the other day about 256k Superbanking. Adding a common TTL chips, a 74174 (hex flip flop), to the 0840 design could extend it to 512k!   The idea is simple - the 0840 board uses VCS-A6 to select banks, except connect its EPROM A12 to EPROM A18. Then feed its RC into the 74174's clock, connect VCS A0-A5 to D0-D5 of the 74174, and Q0-Q5 to EPROM A12-A17. Then you have 512k with two TTL chips.   This might also work as a cheap 127-game menu multicart, but this is ass

batari

batari

Supersize me!

I thought this should get its own blog entry.   I built a prototype 128k-256k 2600 cart, and it works! If I can make this a reality, I won't need to worry about limiting the number of tracks in Superbug. But actually I can't take credit for this, because without Supercat's 0840 cart design and his comments on how to expand the design, this wouldn't have happened. But regardless, with only a 16v8 and 270x0 EPROM needed, this has the potential to be just as inexpensive and simple to build a

batari

batari

2600 compression

Now that Gingerbread Man is done, I am already starting to think about the next project, or more accurately, working on my previous project (Superbug.) Also, a few people tried out a demo cart of the game at NWCGE and it was generally well-received.   The biggest problem with the game, I think, is that the track data takes a lot of space. Right now, each 128x128 track takes up 2k, and the supporting data, like powerup locations and the code to read the track data fills out enough additional

batari

batari

Popcorn and Gingerbread

Now I'm getting hungry.   Changes: New boss level and final boss level. Three selections: 1=default, 2=you lose progress when you die, 3=children's mode (slow enemies and no bird) The easter egg: Actually it was always there, but I've added a very subtle hint for it in the game. Opening tune: Popcorn! Various bugfixes.   To try out the final boss level, for now you can hit select during gameplay. I know the swimming fox looks more like a rat, so instead of criticism, design a better fo

batari

batari

Tank war

Djmips mention of an old Apple II game called RobotWar got me wondering if something similar could be done for Combat tanks. Of course with the 2600, a tank language would have to be really minimal. So I've come up with a 4-bit machine code that might work. You would enter the machine code into the 2600 via the joystick. Each tank might feasibly get 64 units (nybbles) of memory. Although I'm not sure if that much is even needed. mnemon opcode nybbles description ROTL 0 1 Rotate

batari

batari

As fast as you can

Finally, time for another update of Gingerbread Man!   There have been lots of changes, and I don't feel like listing them all, but I'll mention a few:   - Sounds, scoring, lives, different bosses, continue feature - Bonus timer; When it ends another enemy emerges - Levels should be less frustrating - Secret level warp screen (PM me if you want to know how to get there) - Score changes black if you continue or warp (to reveal cheaters )   The final boss will be unreachable to those wi

batari

batari

ZP/immediate load auditor

Many homebrews have had problems with zero page loads when immediate loads were intended. It's a common error that has caught even the best programmers. The problem is that, in most cases, the final binary works as if there were no bug but may occasionally show weird problems on actual hardware. This document describes why this happens.   So I've written a very simple utility to find the bugs for you. To use, make a .lst file with dasm by using the -l switch. Then run the .lst through the

batari

batari

You can't catch me!

My 2600 projects are piling up like the snow that hasn't been falling here, despite freezing weather and predictions from meteorologists. But the analogy doesn't work without snow, which one must shovel away in layers, starting with the freshest layer first. So imagine four games piled up, Superbug on top, with Twisty Passages, RallyB and Zirconium II all below. I did work on some snow (if you catch my drift) and the work snowballed into a new game idea. Superbug is parked for a while, Twisty

batari

batari

The Kernel's Secret Recipe

I've been thinking about the possibility of a multisprite kernel with an asymmetric, reflected playfield, all with no line breaks. It's impossible via normal means, I know. But I was thinking about the repositioning routine and how inefficient it is to basically divide by 15 right smack dab in the middle of the kernel!   So I thought of a possible solution: write 12 or 13 one-line mini-kernels for repositoning, each containing routines to draw the playfield, but they will differ in when they

batari

batari

Superduperbug

I have made the bug faster. It still accelerates at the same rate but will reach a top speed about 50% faster than before. Personally, I find it to be too fast, at least for this track, but maybe some like it that way.   Other changes include a digital speedometer and a 4-speed transmission (albeit automatic.)   I may also add the ability to manually shift the transmission if one desires. But a manual transmission should give additional abilities to make up for the fallibility of human sh

batari

batari

Superbug demo candidate

Sadly, I have not spent as much time on Superbug as I think I should. The basic gameplay is coming along, but the tedium of adding new tracks by hand was a little daunting. Instead I've been working on a track editor, but so far it's text-based, clunky, and needs a lot of work.   Although there are no new tracks yet, I have made some improvements:   Changes since the last release include: Attract mode inspired by arcade game, with music Slower acceleration but same top speed, offering mo

batari

batari

Supercharger prototype!

Do any of the Supercharger-using blog readers here want one of these (for free)?   What's happening is I am planning on releasing the 4k version of my SC game on cassette, so expect a formal release date in a couple of months. I also plan to release on CD. This will be a limited release, as the minigame version, while fully playable, is missing some features of the 6k version that I hope to finish someday.   But for now, I would like to give a few prototype cassettes out to SC owners here.

batari

batari

Old things, living and dead

Kind of a different blog entry - not much Atari stuff to speak of.   I did some traveling the past 10 days. I like to visit uncrowded places that few ever see. Well, I did spend half of my time in Yosemite, which is kind of the antithesis of the rest of my trip. That's not to say the natural wonders there aren't worth seeing. However, I believe its beauty is diminished by the road-hogging RV's and camera-toting tourists who act as if they've never been outside a city. And the fat squirrel

batari

batari

Today's blog title, take 2

I edited this because I need an 8x7 sprite design for the players... Anyone? Bueller? Bueller?   Anyway, back to the regularly scheduled blog...   Last night I decided to work on Maze Craze 2. Well, this is no longer the official name. I think I'll call it "Twisty Passages" unless someone has a better idea.   I've pared it down to 4k (or 4056 bytes, excluding the Supercharger headers) so I can enter it in the Minigame compo. To do so I had to eliminate the title screen and music, plus s

batari

batari

Musically disinclined

I've modeled myself as a writer, a programmer, a teacher and even a mountain climber, but never as a composer.   I want some critique, as this is my first musical piece ever. Is this a piece of art or a piece of something else?   EDIT: OK, so I can't leave this alone. I've posted a new version that (I think) sounds better.   EDIT2: Added third version with percussion scaled back a bit.

batari

batari

Speak to me

I've been playing around with the AtariVOX lately. I found it a little tedious to make my own words - I'd have to try to figure out the phonemes, then cross-reference another table to look up the actual bytes to send to the Avox. Then burn to EPROM or whatnot and see if it works.   Computers are great at tedious things, so I did a little investigation and found a public-domain text-to-phoneme converter based on a 1976 Naval research study. In fact a text-to-speech chip that can be used with

batari

batari

Lubarsky's Law of Cybernetic Entomology

"There is always one more bug." Or two in some cases.   I started working on Superbug again, as I want it demo'ed at Midwest Gaming Classic. Over the past few days, I fixed the timing problems so the game never misses INTIM now (9 whole scanlines left for game logic!)   I've added a bunch of powerups/downs. Aside from the turbo speed that was there before, you get:   Ice Oil slick Super handling Bouncy rubber walls Slingshot (up, down, left or right, but only down is in this d

batari

batari

Eine kleine mazemusik

With sid2tia, even folks like me can add a little tune to a game! Thanks to Manuel for making it. The hardest part was listening to several hundred SID tunes, trying to find ones I liked.   Once I selected a few dozen candidates, I ran sid2tia on each, trying various settings to make just the right sound. Conversion didn't always go well. The TIA is so finicky, 90% of the tunes were totally off-key or otherwise sounded awful (as many have weird effects that I couldn't remove using the setti

batari

batari

Lesser Evils

When initially looking at the SC as a development platform, the 6144 bytes of RAM piqued some wide-eyed optimism in me. "Wow, what am I going to do with all that space?" When you think about it, it's really significant - The SC increases the RAM by a factor of 48! At first blush, the potential seems endless.   Then I start to write some code, and come to realize is that, compared to a standard 4k cart, the total space is increased by only 50%. It didn't take long at all to use all of this

batari

batari

*

The blog title resembles the mazecraze 2 sprite. No, there was no thought in this design... it's just a placemarker until a better idea comes along.   I am also hoping that y'all will help me resolve a dilemma of sorts: I am nearly out of space. The 6k in the SC is all used up - the lower 4k (all but 200 bytes) for game logic, and upper 2k for the maze.   Right now, the game initialization is all located in the upper 2k on startup, and it's all overwritten by a generated maze immediately u

batari

batari

twisty little passages, all alike

Another update.   AI working - A bot roams the maze now. It takes 15-20 minutes to solve the maze.   I've smoothed out the progress bar using a missile.   After generating a maze, the maze number (read: random number seed) is displayed in the score.   If you get totally lost in a particular maze, a program is included that will generate one of the mazes as a monochrome .bmp - enter the hexadecimal maze number as an argument and redirect to an output filename. The passages are black and

batari

batari

×
×
  • Create New...