NEW PC-Engine Game
After writing a few simple demos, I wanted to start writing an actual
game for the PC-Engine. After receiving positive feedback from other
PC-Engine enthusiasts, it will be an "open source" work, with this webpage
devoted to its progress. Updates will happen as frequently as possible,
but I have a job and a family, so this is still just a hobby...
For simplicity, I decided to do a "falling block" style of game.
Since the existing tools haven't really been tested on real-life development,
I didn't want to try something too difficult at first. This genre of games
are usually fun, but they're also fairly simple in terms of programming.
The source code for this game is published (with considerable comments!),
for the purposes of education and attracting more developers to this
wonderful gaming platform. I also hope to have the comments and other
text translated into other languages as well.
The target platform is a "HuCard" (ROM, not CD), so it should be
playable on most emulators and even real systems with RAM-card devices.
If you want to assemble the sources for yourself, you will need the
MagicKit Assembler (v2.01) package from the MagicEngine homepage.
NOTE: Current version also available at bottom of this page.
- Demo #4 is available today. It's amazing
how quickly this thing has come together, based on a good initial
(I actually have very little time to do this, contrary to the
appearances from the past 2 weeks).
Anyway, updates include:
- The game is not just playable now, it also has scoring and
increasing difficulty levels
- Score is displayed, as are PAUSE and GAME OVER messages
- Block doesn't instantly hit bottom when down is pressed.
- Joypad auto-repeat sped up.
- Demo #3 is available today. WOW, 2 updates
in one week ! Updates include:
- The game is now playable, with blocks automatically falling.
- New textured graphics (with color!) for pieces.
They look much better now.
- Joypad auto-repeat on movement.
- Demo #2 is available today. Updates include:
- line-erasing when a line is full
- pieces enter from the top, partially covered
- "game end" detection when a piece is transferred, but partly
in the "drop area" above the playing field
- some (simple) new background graphics
- a couple of bugfixes with movement of the pieces
- code is re-organized with graphics in their own source files
- No, I'm not dead... yet. I've been doing lots of PCE-related things,
but unfortunately, not updating this game demo. Hopefully, this will
change very soon. I have already re-organized the source code a bit,
and I will add a bit more substance to the demo ASAP.
- I've been sidetracked again, but it's not a completely bad thing.
Besides my job (which has been pretty consistently heavy since
October), I have been working with David Michel on an update to
the MagicKit assembler, which would allow you to actually play
demo programs (such as this game) on your own PC-Engine, via
a 'Develo' download link from your PC.
More news on this to follow...
- I have also been playing with a few concepts in graphic editors.
If I do end up writing a real graphic editor for PCE development, it
will definitely take a substantial amount of work (and time). For
now, I am playing with Visual Basic v5.0, and trying different
concepts in user interfaces. I know what I want to accomplish,
but there's substantial effort involved. I will certainly entertain
any offers of assistance.
- Finally, I have been trying to use some of the more advanced features
from MagicKit in the game demo.
These features (like defchar, defspr and defpal) will help in many ways:
I also want to examine different ways of compressing the data down
- visualization of the graphics
- management of video memory
- migration of graphic data to a separate file, and hopefully to a
- Demo #1 is now available.
Pieces can be moved, rotated and placed on the playing field.
Next version will have the pieces falling, and hopefully will
detect full lines.
- The MagicKit v2.0 release is finally available. The reasons for the
long delay are because the documentation grew to be a major
undertaking, and also because I've been working 70 hours a week at
my day job lately. David Michel has been doing extra work for the past
6 weeks to make up for my absence.
There were a couple of last-minute changes made to the macros, so
it will take me a day or two to fix up my game demo to be avaiable.
- The MagicKit v2.0 release has taken a bit longer than expected.
This is partly because we've fixed and/or added a few small things
to both the support library, and the assembler itself. It's also
because we're expanding the documentation to be more comprehensive
than we originally expected. (Also, I suddenly got extremely busy
at my day job). The assembler itself seems complete, and the doc's
- A pleasant side-effect of the delay is more example source code; one
such piece is a 'slideshow' demo which displays pictures on-screen.
I will soon have a slideshow available, of the excellent anime artwork
from dil (being made for the game).
- MagicKit v2.0 is almost ready for release; I am currently updating
- The first game demo will be ready at the same time as the MagicKit
release. It will allow you to move the pieces and place them on the
- I am rewriting parts of the game demo to take advantage of some
new features of the upcoming MagicKit assembler release. I should
be able to release the first "moveable-piece" game demo at the
same time as the MagicKit release. All of my previously-available
code samples will also be updated for the release.
- Progress on the new version of the MagicKit assembler is proceeding
well, and should be ready for release soon. This version of the
assembler package will include more demos, and some tutorial notes.
- More data has been keyed into the falling-block game demo, but
unfortunately there is nothing visible to show for the effort yet.
- Recognized that updates to MagicKit assembler are very important
to the progress of the project. These will be coming soon.
- Working on aforementioned demo of simple moving pieces. So far, only
the background exists.
- Have most of the basic concepts on paper
- Discovered that a graphic editor would really be useful for
designing even the simple shapes involved in "falling block" games.
- First demo release will simply be a playing piece which can be
moved and rotated in the playing field.
Special Thanks to:
(c) Copyright 1998,1999 by Dave Shadoff
Last Updated: 1999/05/27 by Dave Shadoff