Intervista con James McKay - Interview with James Mckay

Autore di Massage e X128 - Massage and X128 's author
28 aprile/April 28th 1998
Di/by Michel "MJL" Iotti
Il sito di Massage si trova a/Massage web site can be found at:

English Version

1) Could you introduce yourself to our readers?

I am James McKay (23), I live in Paisley, Scotland.

I graduated from the University of Paisley in 1996 in Computing Science, but I've been unable to get a job in programming and I'm currently on a job training course (which is not programming either).

I play a bit of snooker and tennis, but to tell the truth it's been nearly a year since I did.

As you would expect I've always played a lot of computer games, I built up quite a collection of Spectrum, C64 and Megadrive games as well as small collections of CPC, SMS, SNES, Lynx, ST and Amiga games (although I don't have them all, some of them were sold to pay for other systems).

Currently I have a Saturn and PS.

My PC is approaching it's 6th birthday later this year...

2) When did you start programming?

My first bit of programming would have been a bit of BASIC on a Tandy CoCo2, when I was about 10, which would've been... 1985.

3) What kind of PC do you use normally? Is it the same you use to write Massage and X128?

I still use a 486SX-25, upgrading is a bit expensive. Yes, it's the same PC which my two emulators were written on, and yes - it's impossible to get them to run at 100% on it!

4) How, and when, did you first discover emulation?

The first emulator I saw was a C64 emulator and a Spectrum emulator (both for the Amiga), the C64 emulator (the A64 it was called) was so slow and the Spectrum emulator didn't work on my Amiga so I didn't take much notice of them.

Then when I got a PC I found Z80 V1.45 (1992?) and was amazed at the full speed on my old 386SX-25 (my previous PC), so I instantly registered.

Then C64S and CPCemu turned up and I was hooked!

A couple of years later I had to write a project for university, so I decided to write x128, Although I didn't expect it to be anything other than an academic exercise.

5) Was MasterGear already out?

Massage started several weeks (yes, weeks) before Mastergear and at roughly the same time as the Sparcade SMS/GG driver. The reason being that SMS information and roms suddenly became available and all those people waiting for it then rushed to make a release.

6) Did you own a real SMS and/or a Spectrum in the past? And did you decide to write Massage as a personal dream, a demonstration of your programming skills, or a will to spread SMS old good games to the public?

I've always owned loads of Spectrums, I have a total of 5 Spectrums (48, 128, +2, +2A, +3).

I have a small collection of SMS games which I play using the Master System Converter attached to the Megadrive, I had these for a few years before I thought of Massage.

I decided to write Massage because I liked the idea of playing SMS games on my PC and I thought that it would lead to a large amount of roms which could be downloaded - I was thinking of myself at the time.

I also considered it to be a "prestige" project.

7) Maybe you added the save game system to end some games you couldn't end on the real SMS?

Strangely enough, I used it to finish Popeye Beach Volleyball on the GG and that's the only game I've finished using that method!

8) What was the hardest part to code in Massage?

The screen. The graphics in the SMS are stored in a tricky bitplane format which was tricky to convert with any efficiency, the undocumented aspects of the VDP which some games still managed to use and those line interrupts which still aren't perfect.

9) Will you consider Massage as "finished" when you'll release v1.0? Are there any features that are still impossible/very hard to add (the GUI, for example, could still be improved)?

No emulator is ever finished, but it will be "finished" in the sense that I probably won't do any more upgrades. Proper sprite collision would be hard to add, since it would slow things down quite a bit. Perfect line interrupts and GG linkup would be virtually impossible to do, due to lack of info and lack of understanding.

I probably should do a better GUI as well.

10) I think keeping emulators ONLY shareware (like Magic Engine, for example) is the best way to feed piracy. Your choice of releasing freeware versions with some months of delay, instead, is IMHO a great compromise. But what do your registered users think about that? Are they angry because they payed and there are freeware versions, or do they understand it's fair?

I think they understand because this is a special situation - I gave up registration at some point last year (can't remember when) and said in advance that there would be one final version for the reg users and that all the versions would eventually get a freeware release.

The tricky thing about starting a shareware product is that you have to figure a way out at some point!

11) What's your favourite emulator out there? And the game you would play forever (if you have the time to play :)?

I am very impressed by KGen (even though I can't run it very well) because it's eight times better than what my failed Megadrive emulator would've probably been.

My most played game.... strangely enough, it's probably Match Day 2 on the Spectrum - quite simply the Diamond Deflection System (TM) allows for great touches and headers!

12) Do you think IDSA actions will kill the emulation scene? I mean, why does this organization close down ROM sites, when these ROMs are almost impossible to find in game stores? Isn't it unpopular for software houses too?

I suppose that the IDSA works on behalf of the software companies, and if the owner decides to intervene then there isn't much that can be done about it.

Whether they wipe out the emulation scene depends on what they consider "commercially viable", if they decide that all SNES and Megadrive stuff must go then you can assume that they are still on sale in some countries - it will halt the scene for a couple of years. If they decide that things like SMS, NES, GG and GB must go then that would be more serious - taking us back to C64S!

I've always liked the idea of old stuff being available for download, there are so many good aspects to it:

1. Too expensive when originally released.

Only about 10 people on the planet could've afforded the cost of buying every Megadrive game! As a result, you like to see what you missed, it's amazing how games sit on shelves at full price then suddenly vanish instead of getting cheaper....

2. It's so convenient.

No more having to fiddle with cables and search through cupboards - it's all there on the PC! In the case of the Spectrum, I don't have to plug in any wobbly interfaces or try to find a working one-button joystick and I regularly get asked why I don't throw out all the Spectrum game boxes (which are all over the place) when I have them all on a CD. It's just so much better on a CD under emulation.

3. It's easy to run import stuff.

Gain access to those quirky titles that "the powers that be" decided were not suitable for us! Instead I would like to put the question in reverse... When a company legally decides to release a retro games pack - don't put a tiny number of old games on the CD and then charge full price! Put more games on the CD! To do this would be to remove the doubts of the potential purchasers by ensuring a reasonable minimum gameplay time. And the older the games - the more that you have to put on it!

13) Are you interested in coding other emulators in the immediate future? Will you finish Massage and X128 first?

Unfortunately there are no other systems that are familiar enough for me to write an emulator. Also this PC isn't particularly useful for compiling large and complex code. Massage will probably stop at V1.0 and x128 will certainly have a V0.9, although I don't know how many more x128 releases I'll do.

I also gave up on attempts to write an Atari 2600 and a Megadrive emulator.

14) Did you ever receive any e-mails (complaints?) from the programmers of the game that showed an "emergency massage"? What was the strangest e-mail you ever received about your emul8rs?

No, I did receive some emails from... 3 games coders, none of them were against the idea of a SMS emulator, in fact I think that they were all responsible for the rom dumping of their own games!

Unusual emails....

There were the anti-registration emails, some of which weren't in English, but it was easy to pick up the "tone" of the message.

One guy sent me an email which just said "Your emulator is shit!" in Spanish!

There were also the Japanese emails which had gone through a piece of translation software to turn them into English. I'm not wishing to be rude to Japan (not at all, I am currently trying to pick up a bit of Japanese for playing import games), but they were quite amusing in the way that gigantic errors crept in to the text.

15) OK, thanks again. Have a nice day!!

Thanks. Bye, James McKay.

Versione italiana

1) Potresti presentarti ai nostri lettori?

Sono James McKay (23) e vivo a Paisley, Scozia.

Mi sono laureato in Informatica nel 1996, all' universita' di Paisley, ma non ho potuto avere un lavoro di programmatore e sto facendo un corso di apprendista (che non riguarda nemmeno la programmazione).

Gioco un po' a biliardo e a tennis, ma a dire la veritá é piú di un anno che non lo faccio!

Come immaginerete, ho sempre giocato con un sacco di videogiochi, accumulando grandi collezioni di giochi per Spectrum, C64 e Megadrive e piccole collezioni di giochi per CPC, SMS, SNES, Lynx, ST e Amiga (non li ho piú tutti, alcuni sono stati venduti per pagare altri sistemi).

Attualmente ho un Saturn e una Playstation.

Il mio PC sta per festeggiare il suo sesto compleanno, nel giro di alcuni mesi.

2) Quando hai cominciato a programmare?

Il primo linguaggio di programmazione che ho imparato mi pare sia stato il BASIC del Tandy CoCo2, quando avevo circa 10 anni... 1985, direi.

3) Che tipo di PC usi normalmente? E' lo stesso con il quale scrivi Massage e X128?

Uso ancora un 486SX-25, aggiornarlo é un po' costoso. Sí, é lo stesso PC su cui ho scritto i miei due emulatori, e sí - é impossibile farli girare al 100% su di esso!

4) Come, e quando, hai scoperto l'emulazione?

Il primo emulatore che vidi era di C64 (chiamto A64) e un altro di Spectrum, entrambi per Amiga; il primo era lentissimo e il secondo non funzionava sul mio Amiga, cosí non ci feci troppo caso.

Poi col PC trovai Z80 v1.45 (1992?) e rimasi colpito dalla velocitá sul mio vecchio 386SX-25 (PC precedente!), perció mi registrai subito.

Poi uscirono C64S e CPCemu... ero stato "agganciato"!

Un po' di anni dopo dovevo scrivere un programma per l' universitá, cosí decisi di scrivere x128. E non pensavo ad altro che a un esercizio accademico al momento...

5) Era giá uscito MasterGear quando hai iniziato Massage?

Massage é iniziato diverse settimane prima di Mastergear e circa contermporaneamente al driver SMS/GG di Sparcade. Successe questo perché le informazioni e le ROMs divennero disponibili all' improvviso, e chi le stava aspettando si affrettó per rilasciare un emulatore.

6) Hai mai avuto un vero SMS e/o uno Spectrum nel passato? E hai deciso di realizzare Massage come un sogno personale, una dimostrazione delle tue abilitá, o una volontá di diffondere i cari vecchi giochi del SMS al pubblico?

Ho avuto tantissimi Spectrum, per un totale di 5 (48, 128, +2, +2A, +3).

Ed ho una piccola collezione di giochi per SMS che gioco con il Master System Converter per il Megadrive; li comprai pochi anni prima di pensare a Massage.

Ho deciso di scriverlo perché mi piaceva l'idea di giocare i giochi del SMS sul mio PC e pensai che avrebbe potuto portare a un grosso numero di ROM - pensavo a un vantaggio personale!

Considerai anche questo come un progetto che mi avrebbe dato "prestigio" (siamo qui a intervistarlo, infatti... NdMJL)

7) Hai forse aggiungo il sistema di salvataggio per finire alcuni giochi che non riuscivi a superare sul vero SMS?

Stranamente, l'ho usato solo per finire Popeye Beach Volleyball per GG ed é l' unico gioco che ho finito solo in quel modo!

8) Qual é stata la parte piú difficile da programmare di Massage?

Lo schermo. La grafica del SMS é stivata in uno strano formato di bitplane, difficile da convertire efficientemente, ci sono aspetti non documentati del VDP (su questo sono ignorante! NdMJL) che alcuni giochi usano e gli interrupt di linea che ancora non sono perfetti.

9) Considererai Massage "finito" quando rilascerai la versione 1.0? Ci sono alcune cose che sono ancora impossibili/difficilissime da aggiungere (l' interfaccia, per esempio, puó ancora essere migliorata)?

Nessun emulatore é mai finito, ma sará "finito" nel senso che non rilasceró piú nuove versioni. Una giusta collisione degli sprites sarebbe difficile da aggiungere, perché rallenterebbe un bel po' l'emulazione. Gli interrupts perfetti e il collegamento di piú GG sarebbero virtualmente impossibili, a causa della mancanza di informazioni e di comprensione.

Forse potrei fare un' interfaccia migliore.

10) Penso che lasciare gli emulatori SOLO shareware (come Magic Engine, per esempio) sia il modo migliore di alimentare la pirateria. La tua scelta di rilasciare le versioni freeware con alcuni mesi di ritardo, invece, mi sembra un buon compromesso. Ma cosa ne pensano di questo i tuoi utenti registrati? Non sono arrabbiati perché hanno pagato e ci sono le versioni gratuite, o capiscono che é giusto?

Credo che capiscano perché é una situazione speciale - Ho lasciato perdere il sistema di registrazione obbligatoria a un certo punto dell' anno scorso e ho detto in anticipo che ci sarebbe stata una versione finale per gli utenti registrati, e tutte le versioni sarebbero eventualmente diventate freeware.

La fregatura nell' iniziare un prodotto shareware é che devi trovare un modo per "uscirne" a un certo punto!

11) Qual é il tuo emulatore preferito qui fuori? E il gioco che giocheresti per sempre (se ne avessi il tempo :)?

Sono molto impressionato da Kgen (anche se non mi funziona molto bene) perché é otto volte meglio di quello che il mio emulatore fallito di Megadrive sarebbe potuto diventare!

Il gioco che ho giocato di piú... stranamente, é forse Match Day 2 per Spectrum - semplicemente il Diamond Deflection System (TM) permette un ottimo controllo di palla!

12) Pensi che le azioni della IDSA uccideranno la scena degli emu? Voglio dire, perché questa organizzazione chiude i siti di ROMs, quando esse sono quasi impossibili da trovare nei negozi? Non é impopolare anche per le software houses?

Suppongo che la IDSA lavori da parte delle case di software, e se il titolare decide di intervenire non c'é molto che possa essere fatto.

Se questo ucciderá la scena dipende da che cosa considerano "commercialmente vitale", se decidono che tutta la roba per SNES e Megadrive allora puoi sostenere che sono ancora in vendita in alcuni stati - questo fermerá la scena per un po' di anni. Ma se decidono che cose come SMS, NES, GG e GB devono diventare introvabili allora la cosa si fa seria - ci riportano a C64S!!

Ho sempre amato l'idea delle vecchie cose scaricabili, ci sono moltissimi lati positivi:

1. Troppo costosi quando rilasciati originariamente.

Circa 10 persone sulla terra avrebbero potuto comprare ogni gioco per Megadrive mai uscito! Cosí, potresti voler vedere cosa ti sei perso, é strano come tanti giochi rimangano sugli scaffali a prezzo intero e poi all' improvviso spariscano, invece di diventare piú economici!

2. É conveniente.

Non c'é piú bisogno di maneggiare cavi e cercare negli armadi - é tutto li' nel PC! Nel caso dello Spectrum, non devo piú collegare delle instabili interfaccie per cercare di far andare un joystick a un tasto, e mi chiedono spesso perché non butto via tutti le scatole di giochi Spectrum (che tengo lí sopra) quando li ho tutti su un CD. Emulato é molto meglio! :)

3. É facile far andare giochi di importazione.

Guadagnamo accesso su quegli strani titoli che "i poteri che contano" hanno ritenuto non adatti a noi! Invece vorrei ribaltare la domanda... Quando una compagnia decide di rilasciare legalmente un pacchetto di vecchi giochi, non ne metta un piccolo numero su CD a prezzo pieno! Metta piú giochi nel CD! Questo rimuoverebbe i dubbi dei potenziali acquirenti assicurando un tempo di gioco minimo ragionevole. E piú vecchi sono i giochi - piú devono metterne!

13) Ti interessa scrivere altri emulatori nell' immediato futuro? Finirai prima Massage e X128?

Purtroppo nessun altro sistema mi é abbastanza familiare per scrivere un emulatore. Anche il mio PC non é particolarmente adatto per compliare codice grande e complesso. Massage si fermerá probabilmente alla v1.0 e x128 avrá sicuramente una v0.9, anche se non so quante altre release faró.

Ho giá rinunciato a scrivere un emulatore di Atari 2600 e uno di Megadrive.

14) Hai mai ricevuto delle e-mail (lamentele) dagli autori di quel gioco che mostrava la scritta "emergency massage" (invece di "message"... Suona come 'massaggio di emergenza' e ha dato il nome all'emu NdMJL)? Qual é la e-mail piú strana che hai mai ricevuto sui tuoi emu?

No, ho ricevuto alcune email da... tre programmatori di giochi. Nessuno di loro era contrario all' idea dell'emulatore, in fatti credo che siano tutti responsabili della creazione delle ROM dei loro giochi!

E-mail inusuali...

Ci furono quelle anti-registrazione, alcune delle quali non erano in Inglese, ma era facile capire il "tono" del messaggio.

Un tizio mi spedí una e-mail che diceva solo "Il tuo emulatore é merda" in spagnolo!

Le e-mail in giapponese, poi, passarono attraverso un software di traduzione per tradurle in inglese. Non vorrei essere rude con il Giappone (per niente, sto cercando di imparare un po' di giapponese per giocare ai giochi importati), ma erano abbastanza divertenti per quegli enormi errori di grammatica nel testo!

15) OK, grazie ancora e buona giornata!!