There are no reviews yet. Be the first to send feedback to the community and the maintainers!
_____ _ _ ______ _____ ________ ___ / __ \ | | (_) | _ \ _ || _ | \/ | | / \/_ _| |__ _ ___| | | | | | || | | | . . | | | | | | | '_ \| |/ __| | | | | | || | | | |\/| | | \__/\ |_| | |_) | | (__| |/ /\ \_/ /\ \_/ / | | | \____/\__,_|_.__/|_|\___|___/ \___/ \___/\_| |_/ CubicDoom, a ray-casting game that fits in a boot sector (510 bytes) by Oscar Toledo G. Nov/25/2019 http://nanochess.org https://github.com/nanochess/cubicDoom It's compatible with 8088 (the original IBM PC) If you want to assemble it, you must download the Netwide Assembler (nasm) from www.nasm.us Use this command line: nasm -f bin doom.asm -l doom.lst -o doom.img nasm -f bin doom.asm -Dcom_file=1 -o doom.com Youtube video: https://www.youtube.com/watch?v=b54xmA0uqlE Play it on your browser: (v86 at parkertomatoes.github.io) https://tinyurl.com/cubicdoom >> HOW TO PLAY << This is the CubicDoom, all the cubes have rebelled against humankind! You need to stop the invasion! Use Left Ctrl to turn to left, use Left Alt to turn to right. Press Left Shift to advance, and Right Shift to shoot. Destroy all cubes on the current maze to advance to the next one. Careful! The cubes will advance towards you. Enjoy it! >> HISTORY << I've coded CubicDoom along five days. It's a ray-casting engine over a 16x16 maze. I always liked ray-casting engines, it was a way to get a fast 3D-world on old machines. I had to simplify this one greatly, for example, at least two rays have to be calculated in order to see if a horizontal or vertical wall has been hit, but I solved it walking the ray very slowly. Also a tan function would have calculated better the distance for the wall height, but I had to go without it. Finally, sprites for ray-casting games are handled in a list, sorted, and projected onto screen, but there wasn't the space. So the enemies are also walls, but moving walls of different color. Mature people will recognize the moving walls pattern as the old robots game from the 80s, where the robots move blindly towards the player. Although in the original robots game the things on the gameplay are mines. I've enjoyed greatly programming this game. I'm pretty curious about how so fast would go on an old PC, but I don't have none at the moment. >> ATTENTION << Would you like to learn 8086/8088 programming? Then you must get my new book Programming Boot Sector Games including a 8086/8088/V20 crash course! Now available from Lulu: Soft-cover http://www.lulu.com/shop/oscar-toledo-gutierrez/programming-boot-sector-games/paperback/product-24188564.html Hard-cover http://www.lulu.com/shop/oscar-toledo-gutierrez/programming-boot-sector-games/hardcover/product-24188530.html eBook https://nanochess.org/store.html These are some of the example programs documented profusely in the book: * Guess the number. * Tic-Tac-Toe game. * Text graphics. * Mandelbrot set. * F-Bird game. * Invaders game. * Pillman game. * Toledo Atomchess. * bootBASIC language. After the success of my first book, if you need even More Boot Sector Games then you must get this book! Soft-cover http://www.lulu.com/shop/oscar-toledo-gutierrez/more-boot-sector-games/paperback/product-24462035.html Hard-cover http://www.lulu.com/shop/oscar-toledo-gutierrez/more-boot-sector-games/hardcover/product-24462029.html * Follow the Lights * bootRogue * bricks * cubicDoom * bootOS
bootOS
bootOS is a monolithic operating system in 512 bytes of x86 machine code.Invaders
Invaders game in 512 bytes (boot sector)bootBASIC
bootBASIC is a BASIC language in 512 bytes of x86 machine code.Pillman
Pillman boot sector game, a yellow thing eats pills and is chased by monsters.RayTracer
Ray Tracer in 483 bytes (x86 boot sector)tinyasm
Tiny assembler for 8086/8088, able to run over DOS for 8086/8088 machines.bootLogo
Logo language in 508 bytes (x86 boot sector)Toledo-Atomchess
Toledo Atomchess is the world's smallest chess program in x86 assembly codebootRogue
bootRogue, a roguelike game that fits in a boot sector (510 bytes)fbird
A boot sector game in text modepi
Pi number calculator using 8088 assembly languagebootle
Bootle (a Wordle clone in a x86 boot sector)book8088
Examples from my book Programming Boot Sector GamesIntyBASIC
IntyBASIC compiler for Intellivision (CP1610 processor)pretty6502
A pretty printer for 6502, Z80, CP1610, TMS9900, and 8088 assembler codeCVBasic
BASIC language compiler for Colecovision, MSX, SG1000, Spectravideo SVI-318/328, Creativision, Sord M5, Memotech MTX, Tatung Einstein, Casio PV-2000, and Hanimex/Soundic Pencil II.bricks
A game of bricks and paddle on one boot sector (510 bytes)book-Atari
Examples from my book Programming Games for Atari 2600Atomchess-6502
Toledo Atomchess for Atari VCS/2600z80rogue
A Roguelike game for MSXgasm80
Gasm80: Generic assembler for Z80/6502Pletter
Pletter compressor, used in MSX/Colecovision games240pTestSuite_colecovision
240p Test Suite for Colecovision/MSX/SG1000heart
x86 16-bit program drawing the heart curve equationTtris
Ttris is a tetraminoes game for TRS-80 Model 1/3 computers.lights
Follow the Lights boot sector game in only 510 bytes of x86 machine code.Zombie-Near
Zombie Near for MSX, Colecovision, Memotech, Tatung Einstein and Spectravideo.Space-Raid
Space Raid game for Atari VCS/2600sphere
Draws a wireframe sphere in Javascript and exports it to GIF fileSpace-Raid-Inty
Space Raid for Intellivisionc6502
Atari VCS 6502 to IntyBASIC compilerTMSColor
Converts a BMP image to TMS9928 bitmap/color format in assembler or CVBasic language.IntyColor
Utility for conversion of BMP images to Intellivision screen formatti994a
TI994A snippets (Astro Cube and Hello)psg2bas
Convert CoolCV PSG log files into IntyBASIC compilable programLove Open Source and this site? Check out how you can help us