A simple host system for a 6502 emulator

2000px-CBM_Logo.svgCPU emulation, particularly of older processors, is an interesting topic.

While emulation source code for various CPU cores is easily available, I wanted to better understand how to interface the emulated CPU with my host machine. Therefore I decided to write a simple example of a host system for an emulated MOS Technology 6502 microprocessor.

The goal would be to have the emulated 6502 write “Hello, world” to the console of my linux desktop machine.

Continue reading A simple host system for a 6502 emulator

Gaining Development Perspective from Field Trials

riverbed-logoAnother post, written by me, for the Riverbed Technology blog — this time about the value of Alpha and Beta testing.
Software developers, such as myself, can get very involved with a single part of the new software on which we are working, sometimes losing perspective. Helping customers deploy and test pre-release software helps us to design better products when we are reminded we need to create a solution, not just a box running some clever software.

You can read my latest post here.

My guidelines for reusable Django applications

djangoI came to Django development from much lower-level development — embedded software, device drivers, and system software. What has impressed me most about Django (and python in general) is the manner in which it guides you to do the right thing in terms of code construction. The framework and language naturally make you think about better ways to express your designs.

Continue reading My guidelines for reusable Django applications

gdb, inline source, and stepping through your code

I really like having inline source when using gdb. Code Complete, by Steve Mcconnell has an entire chapter explaining how you should proactively step through all code you write — and not just when you’re actively debugging an issue. Having followed this practice for a few years now, I can testify that it increases your productivity enormously. I simply can’t imagine not doing so before committing any code.

Continue reading gdb, inline source, and stepping through your code

Installing Fedora Core 12 on Chembook 2370VA

Fedora_verticalAfter a good experience with Fedora Core 8, and a reasonable experience with Fedora Core 11, I decided to install Fedora Core 12 on my Chembook laptop.

In summary, while FC8 and FC11 worked out of the box, FC12 failed to provide me with sound. I discovered later that the KDE mixer had set the center volume to mute. Once I unset that, I had sound.

Other than that, it worked pretty well.

Continue reading Installing Fedora Core 12 on Chembook 2370VA

Philip O'Toole