content/blog/2016/12/chip8-debugging-infrastructure.markdown @ 78b32a9a02c3

Publish projects
author Steve Losh <steve@stevelosh.com>
date Wed, 28 Dec 2016 12:47:42 -0500
parents 0f57fe590e90
children ef47c27c6470
+++
title = "CHIP-8 in Common Lisp: Debugging Infrastructure"
snip = "What's happening inside this computer?"
date = 2016-12-31T18:50:00Z
draft = true

+++

Our [CHIP-8][] emulator in Common Lisp is coming along nicely.  It can play
games, and in the last post we added a disassembler so we can dump the code of
ROMs.

In this post we'll add some low-level debugging infrastructure so we can set
breakpoints and step through code.

The full series of posts so far:

1. [CHIP-8 in Common Lisp: The CPU](http://stevelosh.com/blog/2016/12/chip8-cpu/)
2. [CHIP-8 in Common Lisp: Graphics](http://stevelosh.com/blog/2016/12/chip8-graphics/)
3. [CHIP-8 in Common Lisp: Input](http://stevelosh.com/blog/2016/12/chip8-input/)
4. [CHIP-8 in Common Lisp: Sound](http://stevelosh.com/blog/2016/12/chip8-sound/)

The full emulator source is on [BitBucket][] and [GitHub][].

[CHIP-8]: https://en.wikipedia.org/wiki/CHIP-8
[BitBucket]: https://bitbucket.org/sjl/cl-chip8
[GitHub]: https://github.com/sjl/cl-chip8

<div id="toc"></div>

## Architecture

## The Debugger Data Structure

## Pausing

## Stepping

## Printing

## Breakpoints

## UI

## Result

## Future