The Consolite Compiler

In my previous post, I created Breakout in my custom assembly language, Consolite Assembly. Writing a game in assembly was a fun challenge, but I am used to writing code at a higher level of abstraction. To make it easier on myself, I created a compiler that takes source code in a C-like language and converts it to Consolite Assembly. The source of the Consolite Compiler, written in C++, can be found here. A rough specification for the language, which I will refer to as Consolite C, can be found here. ...

October 8, 2015 · 10 min

Breakout in Assembly

Technical details follow, and while I’ve tried my best to make it interesting and accessible I know that some of you just want to play the game. Here is a link to do just that. Consolite (coming from “console lite”) is the name I’ve given to my recent project of making a tiny hobbyist game console and associated toolchain. My end goal is to write a custom microprocessor and video controller that I can put on my Mimas V2 FPGA board. For prototyping purposes, I have first written an assembler and an emulator so that I can test out how writing games will work while easily making tweaks to the instruction set. ...

August 30, 2015 · 4 min

Scott Pilgrim in Colored Pencil

Click for larger image This is my favorite frame from the Scott Pilgrim comics (originally drawn by Bryan Lee O’Malley). I recently got hold of some art supplies so I figured I’d immortalize it for my wall. For this project I used: Crayola colored pencils, 50 count Strathmore 100lb 9x12" paper Prismacolor blending pencils Prismacolor kneaded rubber eraser

July 22, 2015 · 1 min

Tetris in Hardware

Using the Nexys 3 board with Spartan 6 FPGA to output Tetris to a VGA display. Source Code | Full Technical Report I’m a computer science student at UCLA, and one of my most recent classes was a “Digital Design Lab” where we got to play around with programming FPGAs. For our final project we were allowed to choose what we wanted to create, and my partner and I decided to go with a clone of the popular video game Tetris. ...

July 10, 2015 · 3 min

Planetary - Circular Platformer Concept

Skip to playing the game! In my last post, I dipped my toes in the water with the Phaser game engine by making a simple game of Snake. I enjoyed using Phaser and decided to further test its capabilities by making something more complex. I’ve always wanted to make a side-scrolling shooter, but developing the storyline, levels, and graphics to do it right isn’t something I have time for right now. So I thought, what if I cut corners and just made the level a loop, so you can play infinitely? That gave me the idea for a circular platformer, where you run around the surface of a planet and have to defend against waves of enemies. I’m sure it has been done before, but it seemed interesting enough to start working on. You can see the project on Github. ...

July 8, 2015 · 5 min

Snake in JavaScript with the Phaser Game Engine

I’ve been wanting to get back into game programming recently, so I decided to build the classic video game Snake. I chose Snake because it has simple mechanics and I had never programmed it before. As a web developer I know the browser can be a great platform to get up and running quickly, so I decided to make it in JavaScript. I hadn’t built a browser game since before the <canvas> tag became widely supported, but luckily GitHub has a handy list of JavaScript game engines. I chose Phaser because it’s at the top of the list, and after looking through the documentation it looked like it would suit my purposes. You can play the finished product here. ...

June 27, 2015 · 6 min