Saturday 29 March 2008
Thomas is born
Par Torlus, Saturday 29 March 2008 à 12:26 :: Home
Thomas is born on March 19th. He's a nice little boy of 4Kg210 and 55cm. His older brother, my wife and I are very happy ;)

Home GBA NGC NGPC FPGA Mobile GP32 NDS Oldies Misc
Saturday 29 March 2008
Par Torlus, Saturday 29 March 2008 à 12:26 :: Home
Thomas is born on March 19th. He's a nice little boy of 4Kg210 and 55cm. His older brother, my wife and I are very happy ;)

Wednesday 20 February 2008
Par Torlus, Wednesday 20 February 2008 à 21:58 :: GBA
These last months (years, even), I have done much hardware-related stuff, but close to nothing on the software side, especially for the GBA which is a shame, as GBA development has been my main reason for setting up this website.
More than 2 years after my latest software release for the GBA, here is CCCP, which stands for Crystal Clear Clone for Portable (devices).
The original Crystal Clear game can be found here. This game is my wife's current favorite online game, especially for the multiplayer version she's playing to every day ;)
It has been an opportunity to use latest builds of DevkitARM and libgba that can be found here. Compared to the tools available some years ago, it's a huge improvement. Coding for GBA has never been easier, and I'm quite satisfied with what I've done with their help in about one week : a GBA project in C++, with sound, support for loading/saving, etc.
You can download the ROM here.
Tuesday 1 January 2008
Par Torlus, Tuesday 1 January 2008 à 01:42 :: Home
Happy new year !
2oo7 has been quite a good year for me, and I hope 2oo8 will be as nice. My wife and I are expecting a new kid (another little boy) to born in March, so it will be my main concern for this year at least ;) However, I hope to find some time to work on electronics, mainly FPGA-related stuff.
I have purchased a Terasic DE1 board, also known as Altera Cyclone II starter board. This board features almost anything I need for my projects about emulation of old computers and videogame consoles. This board has already been succesfully used on "larger" designs, such as the Minimig project (Amiga 500 in a FPGA), and there are many systems in the 16-bit era that I would like to have a look at...
Stay tuned ;)
Wednesday 5 December 2007
Par Torlus, Wednesday 5 December 2007 à 21:22 :: Oldies
I added a PS/2 keyboard interface to the system, which makes it possible to play a bit with the Basic.
Fabrice Frances also provided me a modified ROM that is able to somewhat "resume" the execution of the system, from a memory dump that can be done from his well-known emulator, Euphoric. So I designed a memory loader, that downloads the contents from such a dump into memory, with the help of a FTDI USB module. First results look nice :)
EDIT : DBug gave me some tips to fix the .TAP files header (disabling the autostart) and retreive information from it (like the start address). It means that along with Fabrice's ROM, it now brings a great testing solution :) Here you can see some of his demos running.
Sunday 18 November 2007
Par Torlus, Sunday 18 November 2007 à 18:45 :: Oldies
Tuesday 13 November 2007
Par Torlus, Tuesday 13 November 2007 à 21:14 :: Oldies
The project of emulating an Oric-1 in a FPGA is something I started some months ago... until my interest in doing such a thing faded a bit...
Fortunately, mostly because of the (then upcoming) Alchimie 7 party, I went back to this project. I didn't manage to have something working (at least showing some stuff on a TV) during this party, but I worked a bit on it, and managed to get some results in simulation.
Now, after a few days worth of work, here is a first version on the "Oric-on-a-chip" booting the Oric Atmos ROM :)
You may notice some issues here : the first line is not what it is expected to be, and for some reason, it acts like the * keyboard key is pressed forever. But well, that's a good start anyway.
For the moment, there is no PSG implementation at all, and I guess the VIA and ULA code need some rework too :)
More to come soon, hopefully :)
Sunday 11 November 2007
Par Torlus, Sunday 11 November 2007 à 22:19 :: Home
My wife and I went to Alchimie 7 party. As usual it was a great party, with lots of geeks and a top-notch organization.
Here is what the event looks like :
I made a small conference entitled "Emulation with a FPGA", mostly based on my work on the emulation of the Thomson MO5 in a FPGA.
As I was here for the 3 days that lasted this event, I spent some time working on a project I started some months ago. I didn't manage to do all the stuff I wanted to do on it, but some progress has been made.
This last picture should be enough for some people to understand what I'm currently working on... Hopefully, I would be able to show more in a few. Stay tuned !
Wednesday 24 October 2007
Par Torlus, Wednesday 24 October 2007 à 22:27 :: Home
This year's VieuMikro meeting, organized by Silicium stood on October 13th and 14th.
Like all people attending this retro-computing meeting, I had a great time.
Here is a small picture of the event :
My own stuff :
I managed to test the HxC Floppy Drive Emulator on an Amstrad CPC 6128. It works flawlessly, adding therefore Amstrad computers to the large list of supported machines :)
See this forum thread for more pictures and comments. Among quite unusual machines (and people :P), stamba demonstrated an impressive set of electronic music stuff, many of them based on the Commodore 64 and various music peripherals.
Next week, I will go to the Alchimie 7 meeting, with hopefully many things to come. Stay tuned!
Wednesday 29 August 2007
Par Torlus, Wednesday 29 August 2007 à 22:04 :: FPGA
As you may (should :P) know, a Floppy Drive Emulator has been designed by Jean-Francois Del Nero. See http://torlus.com/floppy/ for more information.
His interface uses programmable logic (CPLD or FPGA) to deliver a perfect timing and emulation of a floppy drive. However, various projects exist, based on microcontrollers.
So I wanted to give it a try myself, using a microcontroller. I chose a LPC2106 mounted on a convenient DIP board (LPC-H2106 from Olimex), and started to work on it last week.
Unlike the current CLPD-based version from Jeff, it uses SD cards for storage, as in his WIP FPGA-based standalone version.
With great help of Jeff, I eventually managed to get some good results, as you can see on these pictures :
Thanks again Jeff for your time and patience ;)
As you're probably aware of, MCU are easier to use, and cheaper than programmable logic. However, they bring some limitations, and in such a project where timing is critical, there are some features (especially floppy write support), that are probably not possible with a MCU "alone". However, this work could be a good start to study solutions that could mix external (programmable) logic and MCUs, in order to keep the cost as low as possible, and make it easy to assemble by hand.
Stay tuned !
Monday 13 August 2007
Par Torlus, Monday 13 August 2007 à 21:37 :: Home
Last week-end, I've been to the "Infoticaires 2007", a retro-computing convention. It was pretty cool as usual.
Here is an article about this event :
http://www.obsolete-tears.com/infoticaires-2007-dossier-106.html
It has been an opportunity for me to show the usbSID interface, and try to make the HxC Floppy Drive Emulator work on Amstrad CPC family of computers.
This last attempt failed, as I did not have the correct vhdl core version (and without Internet access during this week-end, I wasn't able to contact Jeff about it). Anyway, a new attempt is scheduled for VieuMikro 2007 (or sooner if I can).
About my own stuff, I've been playing these last weeks with AVR microcontrollers, and managed to write some code for SD cards reading, FAT file system handling and such... Things that would be handy for many projects I have in mind, but that's another story :)
Wednesday 4 July 2007
Par Torlus, Wednesday 4 July 2007 à 23:38 :: Oldies
This is a project I started some months ago : connect a C64 SID to a PC using the USB port, in order to listen to my favorites C64 tunes on the "real thing".
See my previous posts about it here and here.
To sum up, connecting a SID to the parallel port of a PC gives good results, but it was another story with USB, which works in "packetized" mode, and therefore my first attempts suffered from latency issues.
Some time ago, some people seeing my page contacted me about this project, with some new ideas. One of these ideas was to do the synchronization on the hardware side, rather than on the software side.
So here is the new interface :
It features :
Here is how it works (it's dead simple) : on the software side, SID commands are sent to the USB FIFO, and for each start of frame, it inserts a special value in the FIFO (a "marker").
On the hardware side, there is a Timer on the PIC (at 50Hz). When the Timer counter overflows, the PIC starts reading the FIFO and sends commands to the SID, until it finds a marker. Et voila !
Here is a small recording made using this interface (the music is Sanxion's loader tune, from Rob Hubbard) : usbSID Sanxion playback
The whole thing needs some rework, but I'm very happy with the first results. It could lead to one of the cheapest (and handiest) way to feel the SID magic ;)
Monday 19 March 2007
Par Torlus, Monday 19 March 2007 à 22:24 :: Oldies
Yet another old microcomputer in a FPGA :) This time, the "victim" is the Thomson MO5, a machine based on the Motorola 6809E microprocessor. This machine sold well in France, especially because Thomson was the company chosen by the French governement to try to "bring microcomputing to the masses", back in the 80s.
Now, some explanations about the project itself : as most of my Hector-related project is done, I had the idea to do something similar for the Thomson MO/TO microcomputers. A bit of googling led me to a thread in Logicielsmoto.com forums, where someone was saying that he made the implementation of the Thomson MO5 main component (a gate-array used for video and glue logic) into a CPLD. I managed to contact him, with the help of the Serveur87.com mailing list people. The author of the gate-array reimplementation accepted to share his work, and I managed to put things together using the System09's 6809 core, and writing a 6821 core. And here is the result :
Sorry for the bad picture, but that's all I can do for now... as the project is not finished. For instance there is no keyboard interface (EDIT : it is done now). But most of the system seems to work : CPU, ROM, RAM, video, interrupts...
I would especially like to thank :
EDIT : I just finished the keyboard interface today, now I can play with MO5 BASIC :) I've also updated the picture (click on it to get the full-size one).
Sunday 11 February 2007
Par Torlus, Sunday 11 February 2007 à 18:28 :: Oldies
These last days, I have been working on a small project : have an old "Pong" video game (here, from Univox) video output adapted to a TRS-80 monitor. Most "Pongs", including this one, are usually connected to a television through the antenna plug. As usual on this kind of devices, the video signal can easily be found right before the UHF modulator.
However, this one has an interesting "feature" : the video signal is inverted (!) and sits between 0.5V and 1.5V (1Vpp). The TRS-80 monitor expects a 2Vpp signal, between 0V and 2V. I also thought that it would be nice to be able to make a composite output too, so I started to think about a generic solution to perform this kind of operation (here, invert the signal, change its amplitude when needed and adjust it to the right reference voltage).
I thought that this kind of operation could be done with a Operational Amplifier (Op Amp, for short). So here is what I did :
Here is the result :
There are probably better and cheaper solutions, but I'm quite happy with it, as I managed to design the circuit myself, provided that my knowledge about analog electronics is close to nothing :) Please let me know if you're interested in the schematics.
Note : the 555 voltage inverter circuit schematic has a small mistake in it : the R1 resistor needs to be connected between the 6 and 7 pins, V+ being connected to the 8 pin.
My Hector HRX in a FPGA documentation has been updated as well (the document is still in French). You can find the updated documentation here.
Wednesday 31 January 2007
Par Torlus, Wednesday 31 January 2007 à 18:04 :: Oldies
Wow, it has been some time since my last site update :)
However, I have been quite active these last months, as I started to work on a new project : emulate a Micronique Hector HRX in a FPGA.
The Hector family of computers were manufactured in the 80s. They were based on a Z80 microprocessor, and some 7400 series chips for the most. No ASIC of any kind :)
Below you can see a picture of the system running :
More important than the project itself, here is the associated documentation (in French) (8MB PDF file) which contains a rather complete analysis of this machine. I think it's something worth reading for a beginner (provided he/she can read French).
For the moment, only ROM/RAM/CPU and video stuff is implemented, but I will add at least keyboard input soon.
Once the project is finished, I will release its source files as well as an updated version of the documentation (and an English translation).
For more general information about these computers, please visit this page which contains very useful information (and helped me a lot for this work).
Sunday 3 December 2006
Par Torlus, Sunday 3 December 2006 à 18:56 :: Home
EDIT : you can find a detailed article, as well as links to many other articles, photos and videos, on this page at MO5.com
As I'm writing this, Vieumikro 2006 just happened this week-end.
Vieumikro is a meeting about old computers and game consoles. We all had a great time here.
It was an opportunity for me to show some stuff :
I haven't many photos of the event myself, but I know that some people made a bunch of photos, and will show them on the web soon, so I'll link to their reviews once they're done.
Meanwhile, you will find below a small video of my own installation at this meeting, where you can see Defender of the Crown, my IntvFPGA gizmo, then see (and hear) the SID 6851 in action, through the parallel port interface :)