With D.Finck, author of DCSI (Space Invaders emulator) for DC
Interviewed by dc_emumaniac. Edited by CyRUS64
B00B! Dreamcast Research: Hi df. Can you tell us about yourself, and about your family, school, job, etc?
df: I live in Florida (USA). I work as a Mechanical Engineer for a small division of a large corporation. I don't do anything computer-related for a living--only for fun.
B00B: When did you first get into computers and coding?
df: It was in elementary school that I encountered Apple ][s, learned to program in BASIC, and bought my first floppy disk notcher :-) Soon thereafter, I got a VIC-20 for home, later upgraded to a Commodore 128 (although it spent most of its time in 64 mode). I programmed mostly in BASIC, but I did fiddle a little with 6502 assembly on the C-128. In college I didn't program a great deal (except for the one required class in FORTRAN...) but I did get five good years of exposure with *nix. Actually, I did get briefly introduced to C at a co-op job during my college years.
I didn't really do any 'serious' programming until a couple years ago. After having enjoyed discovering MAME and other emulators of classic computers/consoles, I decided to try writing an emulator as an excuse to learn C. The result was JABAWAPE (Just Another Beginners Attempt to Write A Phoenix Emulator). It has since been ported (by others) to a WinCE device (Compaq Aero) and to Dreamcast (as DCPhoenix). In fact, it was learning that JABAWAPE had been ported to DC which was the impetus of me trying my hand at DC development. I contacted the chap who did DCPhoenix (Chris White) and he was very helpful at pointing me in the right direction and getting me straightened out with respect to setting up the dev tools.
B00B: What made you choose to emulate the Space invadors Game?
df: 'Cause I failed at my first project :-) The first thing I tried to do (after getting DCPhoenix do compile and tweaking it a bit) was to port an Atari 2600 emulator. To cut a long story short: I failed. So, to keep me from getting [any more] discouraged, I decided to do something more realistic, yet still something that hadn't already been done on the DC... hence Space Invaders. Besides, Space Invaders in one of the true classics--no one debates whether or not SI is a classic.
Actually, there's a little more to it than that. As it turned out, before getting interested in DC development I had just begun trying my hand at writing a CPU emulator (my prior projects had used other people's open source CPU emulators). Pretty much the simplest CPU is the 8080, which SI runs on. I had been working on getting my 8080 to run SI on the PC so it was natural to just port it over to DC.
B00B: What problems have you had and how did you overcome then?
df: Initially, there was the problem of the development environment and tools. Chris (of DCPhoenix) helped me overcome them by pointing me to a few webpages with detailed instructions. The next problem was a lack of a serial cable, which I duly obtained.
Since then, the main problems have been lack of time, and only having one DC (having to move it back and forth between the computer room for programming and family room for playing). I haven't overcome either of those problems yet :)
B00B: What system would you like to see emulated on the Dreamcast?
df: Atari 2600 (a.k.a. Atari VCS).
Oh, and a C-64 emulator would be really cool too. I'd even buy a keyboard...
B00B: Do you plan an updated version of your DCSI emulator?
df: Not soon, and perhaps never :-( I wanted to add more 8080 games (there are dozens) but my 8080 cpu emu fell short, and I couldn't muster the desire to track down the bugs. I dropped in another CPU emu, but it was slow, so I went on to other (non-DC) projects for a bit. The point may become moot if/when MAME for DC is released. Even though MAME won't support the backdrop artwork :) in SI/SI Deluxe like DCSI does, all other 8080 games should be just fine in MAME, which means it would be nearly pointless for me to do them.
B00B: When you`ve reached the end for this project, do you have any new projects in mind for the dreamcast?
df: Nothing immediate. Although when/if MAME for DC is released I expect to hack around in it a bit (adding features, speed tweaks, other 'adjustments' to my liking etc). I did the same thing with MAMECE (MAME for Windows CE2.11 Palm-sized PC, originally ported by Ben Cooley) and rather enjoyed it.
I may continue to dabble with an old Atari 2600 emu, but I have low expectations for my ability to make it work.
Perhaps I'll collaborate with someone else on something. I dunno.
B00B: What is your opinion of Bleemcast?
df: Nearly no opinion. Clearly the programmer(s) are talented to know a good deal about the DC hardware. However, I never owned a PSX nor do I really have much interest in it. One thing though: the 'one game per CD' thing is a bit hokey--even DCSI plays 2 games :-)
B00B: What is your favourite Dreamcast emulator?
df: Very tough. I have to disqualify DCSI and DCPhoenix from consideration due to personal connection :P
I'd have call it a tie between NesterDC and [d]colem
To be honest, though, I haven't tried any of the others due to lack of interest.
B00B: What console, if any out of the new consoles, would you like to work on?
df: Most likely none of them. I went nearly 20 years between my 1st and 2nd consoles (Atari 2600 to Dreamcast) and I expect it to be perhaps 20 more years before my next console.
B00B: What is your opinion of the Dreamcast Scene and what would you do to improve it to make it more accessible?
df: Like anything, the "Dreamcast Scene" has its good parts and its not-so-good parts. I've been lucky enough to make the aquantance of a number of very nice, helpful, intellegent people whilst playing with programming my DC.
"Make it more Accessible"? I dunno, perhaps put in a few ramps and a couple of handicap parking spaces...
B00B: May i say thank you for your time and good luck with your project on behalf of Boob Dreamcast Research and all the fans who follow the great emulation/development scene.
This document/interview is Copyright © 2001 by B00B! Dreamcast Research and may not be reproduced in whole or part without permission.