DCEmu Interviews is the site that asks the questions everyone wants answering, Part of the
DCEmu Homebrew & Gaming Network.
DCEmu Interviews Go back to Main Page
Interview with: Chris White
Homepage: http://www.alienwebshop.com/pointblank
Date: 2001
The Interview
Wraggster Hello Chris! Can you tell us about yourself, where you're from,
and about your job, school, etc?
Chris: Hi, I'm 21 years old and from London, England. I've just completed
the second year of an AI and Computer Science degree in Birmingham. I'm
currently working for Channel 4 (www.channel4.com) over the summer in the
Information Systems department, and I previously worked for Cable &
Wireless.
University is great, and being English, I have obviously spent most of
my degree in the pub (and some of it rolling around in gutters). Apart from
computers, my other interests include DJing, writing music and travelling.
This summer I'm backpacking around Thailand, and I can't wait! I'm also
going to plug my record that's out: http://www.alienwebshop.com/pointblank/recursion
for ordering details and mp3 clips! haha ;)
Wraggster How long have you been into computers and more specifically coding?
Chris: My first computer was a ZX Spectrum, which I received for my sixth
birthday. I'd been after a computer for ages and I was thrilled to have
a computer with colour and sound - I'd only really used a ZX81 beforehand
which had neither! I programmed some simple stuff in BASIC, but as I was
only six years old the maths behind a lot of the programming was too complex
for me to grasp at this early stage. I bought my first PC in 1992, and coded
very little for about five years. I spent these years learning the various
operating systems, running a BBS, participating in various scene groups
and trying some of the early emulators that were appearing at the time.
I picked up programming again in 1996 after reading a C tutorial on the
internet, and later coded a very simple spectrum emulator called ARSE (Another
Ruddy Spectrum Emulator) using Marat's Z80 core. Since then, my degree in
Computer Science and AI has encouraged/forced me to get coding again! :)
Wraggster What made you choose the project you have worked on so far?
Chris: I fancied giving console programming a go and DC coding looked easy.
Phoenix is always a good starting point because it's such a simple game
to emulate. I used Darren Finck's Jabawape emulator as a basis, because
it was really well documented and the code seemed pretty clean. Once my
coders cable had arrived and I'd setup my development environment (actually
an old laptop) I managed to get the emulator running on the DC within about
6 hours (this was DCPhoenix 0.1).
Darren actually contacted me after seeing DCPhoenix, and provided me with
an updated version of Jabawape and helped explain a couple of areas of the
code that I was unsure about. I encouraged him to get into DC coding, and
he's now programmed his DCSI emulator which is great!
Wraggster What problems have you had and how did you overcome then?
Chris: I didn't have too many problems as such, but porting the old allegro
graphics routines to the DC involved digging out some old documentation.
(Allegro is a free graphics library commonly used for programming DOS games).
I also coded a simple malloc routine which caused me some problems, so I
nicked one from Dan Potter, which of course worked fine. (malloc allocates
blocks of memory).
The most irritating part of the project was actually programming the GUI!
This turned out to be quite time consuming, with endless DC reboots in order
to tweak elements to ensure it looked right.
I never really had time to research DC sound properly either. It's an area
which is lacking documentation, so I'd encourage anyone who's mastered it
to either produce a tutorial, or a nice library! DCPhoenix actually uses
samples, which is a bit of a workaround...
Wraggster With DCPhoenix do you see any updates on this rather great emulator?
Chris: Not for the moment. I stopped coding DCPhoenix, because it was pretty
useable and I had a load of exams at university (don't worry I passed!)
I'd prefer to concentrate on new projects myself, but it would be good to
see someone else pick up the code and make improvements. Pop Flamer and
Naughty Boy are two games which run on similar hardware to Phoenix, and
the emulator could easily be adjusted to run them.
Darren actually sent me the following snippet of code, which squashes the
Phoenix display to correctly fit the DC resolution. Currently the aspect
ratio is correct, but this means that 16 lines are actually missing from
the bottom of the display.
Basically in video.c, change the line which reads:
vram_s[(x+56) + (320*y)] = bm3[x][y];
to:
vram_s[(x+56) + (320*y)] = bm3[x][y+(y/15)];
There are a couple of other changes which need to be made, but these should
be pretty obvious from looking at the code.
Wraggster Do you have any new projects in mind?
Chris: My final year project at university is going to be an arcade game
emulator of some description and will be written from scratch. I'm currently
reading a book entitled 'Programming the Z80' and have started coding a
Z80 CPU emulator in Java. At the moment, I'll be concentrating on that but
I wouldn't rule out other projects in the future. I did have a look into
porting the System16 arcade emulator, but a lot of it was written in assembly
and it would have been too time consuming to port. I'd be more than happy
to collaborate with others on a project if there are any coders out there
who are interested?
Wraggster What is your favourite game for Dreamcast?
Chris: Shenmue seriously ate into my social life. Real life events began
to remind me of Shenmue, even simple things like waiting at the bus stop.
I even started to dream about Shenmue! How sad is that?! I've always loved
Yu Suzuki's games, Out Run was my favourite game when I was younger, which
he also produced. I loved Out Run so much that I bought the arcade machine
and stuck it in my garage! It would be great to see it emulated on the DC.
Apart from that, I really don't play as many games as I should. A lot of
the time I just enjoy playing games for a short period of time to check
out how the technology has progressed and get a quick feel for them. I prefer
playing games when I've got friends round and Virtua Tennis has proved a
firm favourite recently. I have a confession though - I am absolutely crap
at most computer games. I'm the laughing stock of my household because I
do a Computer Science degree, but I'm consistantly beaten at everything!
I'm actually quite good at Phoenix though, perhaps that's why I coded an
emulator, so I could finally beat someone at a game! ;)
Wraggster What is your opinion of the Dreamcast Scene and what would you
do to improve it to make it more accessible?
Chris: I think the DC Scene is brilliant, and a lot of people have clearly
devoted a lot of time to producing documentation, libraries, cd covers and
websites. To improve the scene I'd encourage authors to release their source
code. After all, we're all doing this as a hobby and we're not going to
make any money, therefore releasing code will provide some of the most useful
documentation going. I'm sure you've heard the open source arguments before,
so I won't reiterate them here.
Wraggster What is your view on the other new super consoles and the possibilitys
of hobbyist development on them ie gba etc?
Chris: The GBA looks like the most promising platform for hobbyist development,
although it's limited memory and CPU speed limits the type of emulator it
can run. The GBA already has some nice games, a lot of them close to the
Snes originals which can't be bad! I'm sure that Nintendo won't dissapoint
with the Gamecube either, but let's hope that there are some good third
party titles unlike the N64.
With regard to the PS2, even the official PS2 developers have apparantly
been having teething difficulties with the platform and it doesn't seem
as well designed as the DC. The price of the PS2 (£300 in the UK)
has put me off for the time being, and I have been largely unimpressed with
most of the titles I've played on the machine, although I've still to try
GT3.
The XBox should be easy to develop for, because it's essentially a PC in
console casing. I'm not a big fan of Microsoft, but in the past their hardware
has been quite good, in contrast with their awful operating systems! MS
are working with a lot of big developers, so I'm hoping to be pleasantly
surprised.
Wraggster May i say thank you for your time and good luck with your project
on behalf of B00B and the rest of the emulation scene.
Chris: No problem! :)
|