Modern rules
Pieces come from a shuffled bag of all seven and turn with SRS wall kicks. Hold a piece for later, see the next three, and get half a second to slide a landed piece before it locks.
A falling blocks game for the Atari 800 XL.
Seven colors in a character mode, pieces that glide a scanline at a time, and Korobeiniki on POKEY, all on a 16K cartridge.
A 16K cartridge for NTSC machines, as a .car file or a raw .rom image.
The title screen picks the starting level, the music and the control. The game shows the held piece and the next three, and a meter for each POKEY voice.
QUADROP takes the whole machine: it switches the OS ROM off and runs its own interrupt handlers. Everything is written in 6502 assembly for ca65.
Pieces come from a shuffled bag of all seven and turn with SRS wall kicks. Hold a piece for later, see the next three, and get half a second to slide a landed piece before it locks.
A character mode line has four colors. The players and missiles sit over the well as color layers that GTIA mixes, so every piece gets its own hue.
The falling piece moves a scanline at a time, and rows above a cleared one slide down the same way, using glyphs that join the bottom of one block to the top of the next.
Every ten rows the pieces fall faster, from a row a second at level 1 to twenty rows a second at level 30, and every level stays playable.
The Russian folk song, in an arrangement of its own: a lead, chords and drums, and a 16-bit bass that stays in tune down to the lowest notes. It speeds up at levels 8 and 15.
Set the control to AUTO and watch: for each piece it weighs every rotation and column, and uses hold when the other piece fits better.
A joystick plays the game; the keyboard adds the rest.
| Action | Joystick | Keyboard |
|---|---|---|
| Move | Left, right | |
| Turn clockwise | Fire | X |
| Turn counterclockwise | Z | |
| Drop faster | Down | |
| Drop at once | Up | |
| Hold the piece for later | Space C OPTION | |
| Pause | P START | |
| Quit to the title | ESC |
On the title screen, up and down (or SELECT) pick a setting and left and right (or OPTION) change it. Fire or START starts. The high score survives RESET.
You need cc65 and python3, with no extra packages.
brew install cc65
git clone https://github.com/ecmel/quadrop.git
cd quadrop
make # build/quadrop.rom and build/quadrop.car
make run # runs it in Sally, from ../sally
QUADROP was developed against Sally, an Atari 800 XL emulator for macOS, and plays in any emulator that loads a standard 16K cartridge.