Version 3 of the mini-game RainZapper I made for the April 2018 edition of the Retro Challenge is now available. New in this version: Sound effects and high score storage to disk. Also some bug fixes regarding mouse support.
Improved the user interface for two player adapters and added a new firmware. Details:
Add Famicom controller to USB adapter firmware v2.2 (Adds two player and SNES controller support)
On two player adapters, also display the controller type detected in port 2.
A PC version (Windows and Linux) of my DONKEY.SMS Master System game is now available. No emulator required. Can be played using a mouse, keyboard or a game controller.
Should fix most cases of Failed to open adapter under Windows when using RGB lighting control software, such as RGB Fusion, G HUB, Windows Dynamic lighting, etc...
Add Dreamcast to USB adapter firmware v2.1
The physical edition of my game SKBN does not include a box at the moment, but I designed a box for customers willing to print one at home.
一年以上がかかったが、ついにV2ができた!
raphnetのオリジナルレベル(初心者向け)100面のコレクション(raphnet100)を追加
Jacques Duthenから未公開のレブルコレクション(Sokogen-990702、Sokogen-990917、そしてSokogen-991123)を追加
Add options to mute/unmute specific channels (--mute and --unmute command-line options)
Add keyboard controls (1-8 to toggle mute, 0 to toggle mute all/none, N/P to play next/previous song, R to restart song, ESC to quit)
Fix a bunch of buffer overflows, fix warnings, some code cleanup...
Add an option for Gamecube controllers where the L/R buttons are triggered early using the analog reading from the L/R sliders. This option is toggled with A+B+X+Y+L and is remembered between power cycles.
New Classic controller to USB adapter firmware version 2.2.7:
Add an option to invert the Y or X joystick axis.
Mouse mode: Wii Guitars now supported.
Mouse mode: Add an option to disable Nunchuk scrolling.
Correct values used for D-Pad as axes option (was broken since v2.2.2)
New PSX Controller to USB adapter firmware version 1.0.2:
Add support for the PSX Analog Joystick (SCPH-1110). Should also work for the Dual Analog Controller.
Add support for the Playstation mouse (SCPH-1030)
Use slower timing when poll interval is >= 10ms. With this change, some 3rd party controllers may work.
I released a new version of my Homebrew Sudoku SNES game. The changes are:
Use an opaque background on the grid to (hopefully) avoid eyestrain
Also use less bright colors on the grid.
Slow down the background scrolling to (hopefully) make it less distracting.
Fix controller swapping for some games.
Show a message box when attempting to configure the plugin. (contributed by CEnnis91)
Correct the spelling of 'Dimitri & Yorick'
When I learned that the C source code for the Amiga version of Arcade Volleyball was available, I immediately thought, why not port this game to the SMS? It should be a nice little week-end project! (and it was!)
This game was inspired by Pong so I added support for the Sega HPD-200 Paddle. But even with standard controllers, it's a lot of fun, especially when played between friends!
For the smspower.org 2021 coding competition, I made this Sokoban clone for the Master System. Contains over 1000 levels and saves the progress in the cartridge.
BIOS : Improvements for co-existing with another hard drive BIOS. By default, the SD-Cart JR becomes the last drive in the system. (tested only with JR-IDE)
BIOS : Add an options menu to allow non-default behavior, such as:
Installing the SD-Cart JR as the first drive in a system with another hard drive BIOS (existing hard drive becomes second hard drive and remains accessible)
Installing as single drive (other hard drive not accessible)
Not installing the SD-Cart BIOS.
The option menu count down can be skipped by pressing ESC.
sdcart.sys : Add support for command-line options /Y (always install) and /A (install only if card present). Also displays the drive letter it got assigned to on DOS 5.
sdpart.com : Add a 'b' command for some BIOS tests. (for debugging purposes)
Alter timing so the brawler64 wireless gamepad will work. Those will now work with a poll interval >= 2ms on single port adapters, and >= 4ms on dual port adapters.
Add a feature to swap the main analog stick and the D-Pad
Save memory in usb.c (no user visible effects)
Correct bootloader entry address (maybe less chances of failing)
The Game Gear portable game system shares a lot of its architecture with the SMS and is supported by devkitSMS. So why not? Here comes DONKEY.GG!
I recently designed a game cartridge programmer/reader for the Sega Master System (SMS) / Mark III / Game Gear ecosystem, because I wanted to program the SMS and Game Gear flash cartridges I designed, but as it turns out, it is also quite useful to try out games from my cartridge collection in emulators.
For a game project, I was called upon to design the cartridge circuit boards for SMS and Game Gear I present in this article. My design includes a 512 kB Flash chip, has a CPLD-based mapper and allows saving scores/progress directly on Flash. (code available on github.com)
Compatibility fix for Megadrive controllers
I previously shared .STL files for printing an enclosure, but the model was not tested it in real life. So I ordered a print from a commercial service, made out of nylon using an SLS process. The result is very good and everything fitted without rework.
I needed a test ROM for a Master System cartridge and wished to learn about game programming for SMS. So I had fun making this little game.
When inserted, this cartridge makes a PCjr boot faster. For fun this week-end I examined in detail what changes it makes to the PCjr BIOS to achieve this.
The RetroChallenge ended many months ago, but that did not stop me from continuing to experiment with my MSX computer. I recently completed two projects: First a 64 kB EPROM ROM cartridge PCB, to avoid long cassette load times for a game, and a Megadrive/SMS controller adapter, because I did not own a joystick. Follow the link for pictures, wiring tables and schematics.
There is an unofficial RetroChallenge this month, the RetroChallengeRetry! So I bought a kind of computer I know nothing about and have zero experience using: An MSX computer. My goals: Make it work, play games, and if I have time, program something on it!
I recently updated my 64k PCjr cartridge PCB design to offer greater flexibility. It can now use any Chip Select, can replace the system BIOS and now also supports 32k chips.
StellarRoads is a 2D scrolling platformer where you can only go forward and survive by skillfully controlling the vessel's speed and jumping right on time!
Heavily influenced by the well known 1993 classic SkyRoads by Bluemoon, StellarRoads can be seen as a sort of 2D "demake" of SkyRoads.
Platform: DOS (or DOSBox) Video modes: VGA, Tandy or CGA Sound: PC Speaker, Tandy or Adlib
Carefully coded in x86 assembly to run well original hardware, even at only 4.77MHz with CGA. I hope this game will be yet one more game worth enjoying on your retro PCs!
A physical edition of RATillery, including a box, the game on floppy and a set of postcards can now be ordered from Côté Gamers.
The game in this edition is a new version with many improvements over the free version:
VGA 256 color suport (320x200)
VGA 16 color support (640x480)
AdLib, OPL2LPT and Tandy sound support
In-game timer (those who thing too much loose their turn!)
Training mode (get better through challenges)
A much stronger AI adversary (for playing alone)
Do not miss your chance to add this physical edition of RATillery to your collection! Visit the Côté Gamers product page for more information.
None of my Macintosh M0100 mouse would work on my Apple IIc, so I corrected the problem by building a simple adapter. Pictures, schematics and ready-to-use adapters available.
Add a new mapping (SNES 6 - Hold R)
This month, for the RetroChallenge, I'm trying to finish and document a few projects. Here is the first one: A PCjr cartridge PCB project with a 3D-printed enclosure, and a cartridge version of Alley Cat for the PCjr!
First version able to convert executables to PCjr cartridge ROMs.
Bios parameter block and output file padding can now be disabled using -f 0
Add the jrromchk tool, to convert between .JRC and raw PCjr ROM formats
Add a loader for PCjr cartridges (pcjrloader.asm)
October 2019. It's already time for another RetroChallenge!
Lately and this month in particular, I've been and will be very busy... While this did not stop me from working on a few retro gaming and computing projects, I have not taken the time to finish them and document everything on my website as I usually do... So! That's exactly what I hope to acheive this month: Finish, document and publish a few projects.
Maintenance for mupen64plus only: (for project64, see previous releases)
Update to input plugin API 2.1.0
A Kickstarter campaign is in progress for a professionlly printed high quality edition, including a box, a 40 pages manual/making-of, a 3.5inch floppy disk containing the game + extras.
The game itself is a new version with many improvements over the free version:
VGA 256 color suport (320x200)
VGA 16 color support (640x480)
AdLib, OPL2LPT and Tandy sound support
In-game timer (those who thing too much loose their turn!)
Training mode (get better through challenges)
A much stronger AI adversary (for playing alone)
Do not miss your chance to own this new high quality physical edition of the game!
Documenting the protocol of the HVC-051 controller for Famicom.
I finished my RetroChallenge projet just in time! I built a cartridge and the ROM version 1.0 is available for download.
In this week's update:
Part 14: Testing the cartridge PCB: It works!
Part 15: Adding sound effects
Part 16: ROM Version 0.3 available for download.
The game is almost complete! New in this release:
Standard controllers supported
Better hint function
Automatic Sudoku solver
In-game clock
This week, I designed a PCB to build a cartridge for my SNES Sudoku game. Now waiting for the boards... I hope they'll work!
As far as I know, two different types of graphics tablets were made available for Wii and for a project I'm working on, I need to be able to communicate with both models. So I acquired them and figured out how they communicate. The process is documented on this page.
My Sudoku game for SNES is progressing well! Many updates this week:
Part 3: Using a sprite
Part 4: Issues on real hardware
Part 5: Validating moves
Part 6: Hints
Part 7: Sudoku puzzles
Part 8: A first relase (v0.1) - Test it!
Part 9: New goals
For the March 2019 edition of the RetroChallenge, I'm making a Sudoku game for SNES, with NTT Data Keypad support (a controller/numeric keypad combo). In this post, I talk about my development tools, I set goals and start working on the game.
In the previous edition (RC2018/09) I learned a bit of SNES programming, but all I did was a controller test ROM. So for RC2019/03, to avoid forgetting what I managed to learn about 65816 assembly language and SNES architecture, I intend to put my skills to use to make an SNES game, something I've always wanted to do!
Initialize the command-line fields of the PSP correctly for .COM executables. (Use length of 1 and add a 0D terminator instead of zero'ing everything)
Implement int 21h,02 (DOS putchar)
Add a version string in the loader and in the tool
Add a makefile for cross-compiling the windows version with MXE
Add a new button mapping. (Enabled with L+R+Z+Joystick_down)
Improve joystick analog range in 'high resolution' mode.
N64: ZL and ZR are not longer tied. By default, only Zr is used now. The old combined behavior can be toggled with L+R+Z+Joystick_up.
Back in 2005, I built an interface to control an ISA AdLib card with a parallel port. I recently noticed that my design is compatible with the recent opl2lpt project, so it can also be used with utilities or games with opl2lpt support.
A short page where I attempt to list all recent DOS games for which physical editions have been made or attempted. How many games did I miss?
A project from 4 years ago I never posted: Circuit and 3D-printable enclosure for an SMS to MarkIII/SMS-J adapter.
PCEngine用XHE-3をリバースエンジニアして、同じように動く基板を作ってみた。
I decided to port RATillery (written in 8086/8088 assembly) to Android, but without rewriting the game. Hence the project is to create my own 8088 emulator, and I am attempting to do it entirely using Java.
In this sixth edition:
Part 12: Let there be sound! (PC speaker emulation)
I decided to port RATillery (written in 8086/8088 assembly) to Android, but without rewriting the game. Hence the project is to create my own 8088 emulator, and I am attempting to do it entirely using Java.
In this fifth edition:
Part 11: Being nicer to the CPU (and battery). Where I explain how I stop the game from using 100% of the CPU (or 100% of one core) all the time.
Add gamecube keyboard support
Maintenance:
Support for adapters running firmware version 3.6.x
Reading the Game Boy Camera save RAM data is possible with a Transfer Pak and my N64 to USB adapter, and to convert this data to standard images I decided to make my own tools. One is a command-line tool for Linux, and the other is a Javascript/HTML5 version which runs locally in a browser.
This edition of the RetroChallenge is (already!) over. My overall goal was to learn as much as I could about the NDM24 Modem for Super Famicom, and I think I was successful. I now know enough to write my own code to communicate with it. I also know more about what this JRA PAT "game" was and even modified an emulator to let it run as "well" as it does on real hardware: That is to say that in both cases, the game hits the wall of failing to communicate with its server.
I figured out the missing bits using a logic analyzer and modem emulation finally works! But a the game still needs a server...
As I wait for a logic analyser to arrive (to figure out why emulation is not working), I look inside the modem to see what else I can learn and notice a debug port I will probably use.
Modem emulation is half working. JRA PAT sends AT commands, but the answers won't get through yet. I will need to probe the signals on the modem to learn more.
I implemented basic (functional I think, but not accurate in terms of timings) flash memory emulation. JRA PAT now gets to the point where it want to communicate with the modem. Now I can start trying to emulate it.
I taught myself a bit of SNES programming and created a simple ROM: a controller test supporting the NTT Data Keypad.
This is the second update, where I seriously start working on emulation, but as I also learn that almost everything I intended to find out is already documented, I set some new goals.
This is the first update, where I connect the modem and keypad controller to a Super Nintendo (yes, wrong region) to see what this is all about. I also manage to dial into another computer and try making sense of the first (and only) data frame sent by the game.
My project for this edition: Learn everything I can about the NDM24 modem for Super Famicom:
Find out how the modem communicates with the console through a controller port.
Learn more about the modem. How fast (or slow) is it? Does it use standard AT commands?
Attempt to make everything work in an emulator. (Communication with the modem and modem commands?)
Pretend the connection succeeds to see what happens.
Attempt to understand the nature of the exchanges between the game and the server.
In other words: I am going to spend several hours working on figuring out how an obscure and (now) mostly useless piece of hardware almost nobody has ever heard of nor cares about works. And I know I'll enjoy it!
I decided to port RATillery (written in 8086/8088 assembly) to Android, but without rewriting the game. Hence the project is to create my own 8088 emulator, and I am attempting to do it entirely using Java.
In this fourth edition:
Adapting the UI for touch screen interaction
Try the Beta app now!
More coming up, stay tuned.
I decided to port RATillery (written in 8086/8088 assembly) to Android, but without rewriting the game. Hence the project is to create my own 8088 emulator, and I am attempting to do it entirely using Java.
In this third edition:
Keyboard support
In-game bugs
Optimisations for faster emulation (12 times faster)
More coming up, stay tuned.
I decided to port RATillery (written in 8086/8088 assembly) to Android, but without rewriting the game. Hence the project is to create my own 8088 emulator, and I am attempting to do it entirely using Java.
In this second edition:
Tandy 16 color video to Bitmap
Implementation errors
The title screen works!
Additional sections will be appended to the page in the following weeks.
I decided to port RATillery (written in 8086/8088 assembly) to Android, but without rewriting the game. Hence the project is to create my own 8088 emulator, and I am attempting to do it entirely using Java.
In this edition:
Introduction
Android and Java
General architecture
Implementing the CPU
A first image
Additional sections will be appended to the page in the following weeks.
A while ago I bought a pair of unusual Super Famicom controllers that were part of (or for use with) a Super Famicom modem kit. I had a bit of fun figuring out how they work and this page is the result.
Now also works under Windows (download the .zip)
Support titles in Japanese correctly (convert Shift_JIS to Unicode)
Now compiles with Qt4 (with the help of Qt3 compatibility classes)
Now built using qmake
License updated to GPLv3 (License text now also included)
Version 2 of the mini-game RainZapper I made for the April 2018 edition of the Retro Challenge is now available. New in this version: CGA and VGA adapter support. Tandy adapters are of course still supported. All these versions are also playable using a mouse, a good (but inferior) alternative to the NES Zapper which requires building an adapter...
Bugfix/maintenance:
Add protection against invalid commands (Fixes errors when using more than one controller pak)
Disabled logging (slight increase in performance)
I guess I should have written about this at the beginning of the month, but better late than never! Here's what I'm doing for RC2018/04:
Design an adapter to connect an original NES Zapper to a Tandy 1000 EX PC.
Code a Duck Hunt clone and/or an original mini-game if I find inspiration.
Use the Tandy-specific 16 color video mode. (It would be a shame not to!)
And if I have enough time:
Also support CGA 320x200 video, and test the game on my XT-clone with a CGA card.
Experiment a bit to find out if an unmodified Zapper can also work on a VGA monitor.
Let the game also be played using a mouse (speed could be accelerated to make aiming more difficult.)
Things are going quite well so far, so I will most likely have time for the sub quests listed above!
Fix never-stopping vibration issues (Dolphin)
New features and bugfixes:
Add a triggers as buttons mode for Gamecube controllers
Add a disable analog triggers mode for Gamecube controllers
Internal changes to workaround a presumed Windows bug (Joystick ID confusion where the second controller stops working or gives an error in the Game controller test dialog)
Implement a feature to let the adapter manager query the feature set of the current firmware.
pj64 plugin version 1.0.4 and mupen64plus plugin version 1.0.1:
Add support for the upcoming 3.5.x adapter firmware (2-player adapters won't work properly otherwise)
Bugfixe(s):
Fix ports 1 and 3 special version
Another attempt to fix netplay (version 1.0.2 did not work)
Add a new conversion mode for Joystick values: Extended (where Gamecube values are forwarded to the N64 without transformations)
Fix erratic button mashing behaviour in Shadows of the empire
Set lock bits to protect bootloader from erasure
Disk images now have a standard FAT12 filesystem so besides being bootable, floppies may also contain extra data (.EXE version of the program, documentation, etc...)
Add another special build where two-port adapters act as N64 ports 1 and 3. (This is in the hope that the Densha de GO! controller will then work.)
Performance improvement:
New IO request for even lower latency when using the raphnetraw plugins.
Reduced memory footprint.
A user tested the Transfer Pak and I was able to test a N64 mouse and the Bio Sensor (for Tetris 64). As I expected, everything already just worked and no changes were required.
Maintenance release:
Improved structure and separation for easier maintenance of the code shared between the Project 64 and mupen64plus versions of this plugin.
Support for the upcoming 3.4.x adapter firmware (will provide even lower latency/overhead)
My extenmote project which permits the connection of NES, SNES, Gamecube, N64 and other controllers to Wii remotes (by emulating a classic controller) now also works on the NES Classic Edition. But this needs more testing... Please test and report if you can!
These plugins use the direct controller access feature offered by my N64 to USB adapters (versions 3 and up) to let the emulated game communicate with the controllers directly. As as result, the rumble pak, controller pak (mempak) and potentially other accessories are automatically supported! (Updated: Now for Project 64 too!)
In the hope that it will make contributing easier (and therefore less rare), I decided to push many of my projects on GitHub. But I will continue to do official releases on this website, and the option of contacting me by email to discuss anything about a project remains.
RATillery is a simple artillery game inspired by gorillas but written to run even on early PCs. In RATillery, two fireball-throwing rats fight atop stacks of crates in a warehouse. Try the game online, or download it for your old PCs!
Minimum system requirements: 64kb free memory, 64kb free hard drive (or floppy) space, CGA video card.
Adding an Y/Pb/Pr (also known as Component video) to some SNES models is possible, and my triple video buffer board is perfect for this project. Visit the page for an example.
A tool to convert 16-bit .EXE et .COM executables to bootable floppy images without DOS. Can recreate the original experience of some old PC booter games or add a nice extra touch to homebrew retro works.
New in version 1.5:
NES buttons have been reassigned to match SNES buttons. This makes it possible to switch controller type without reconfiguring anything. Works great for RetroPie...
Mini-reviews and screenshots of PC games I played as a child. Did we play the same games? They are all excellent games I invite you to (re)discover on your retro PCs or using DosBox!
25 years ago in the course of the 1990-91 school year, as my third grade class visited the computer room for the first time I remember playing Computa games (FR: Jeux de calcul) by André Normandeau. Today, following an interview with the author, I have the pleasure of relating how this educative math game came into existence, and I am delighted to offer an online version.
Do you remember playing it? Try it with your kids, it's fun!
Besides sending files to your retro PC system, PPUSBCOMM can now receive a disk image, writing it directly to a target floppy disk. Similar to ADT (Apple Disk Transfer) targeting Apple II computers, but for PCs. Ideal to recreate system and PC booter games disks.
This new version, based on my Multiuse PCB-X board, beats previous versions in performance and features:
USB full speed (12 Mbit/s)
Very low latency (approx. 6ms worst case)
Configurable controller poll frequency (Maximum 500Hz)
Firmware update possible and easy
N64 mempak read/write
End of page bonus: Latency explained: What is latency, how it happens, how we can minimize it and a raphnet vs. competition comparative table.
PPUSBComm is a tool to copy files from a Linux system with USB ports to a system running DOS with a parallel port. I created this tool to send games and software I download to my Tandy 1000 EX.
This USB-specialized circuit board design is inspired from my previous Multiuse Tiny 1 and Multiuse PCB2 projects. This time, since a micro-controller with native USB support is used, it is possible to transfer data at 12 Mbit/s (Full speed) unlike the older designs which, due to the use of a software-only USB implementation (V-USB), were limited to 1.5 Mbit/s (Low speed).
I simply wanted to have fun with an old Tandy 1000 EX computer, but the image quality using the NTSC video output was unbearable. The alternative was to use a CGA monitor of course! But as I don't own one, I started looking at how I could build a CGA to VGA adapter, which I was able to build using an FPGA development kit. The project was the perfect excuse to acquire one. See the page for notes, explanations, schematics and source code (at your own risk).
A quick hack I made to improve the compatibility of an SMS to Megadrive cartridge adapter by having an AVR micro-controller drive instructions on the bus before the game runs.
It has been known for a long time that using SNES controllers on a NES was possible and easy to do using simple wiring. So this is nothing new, but since I recently built such an adapter, I just thought I'd document it on this page.
Implement an HID Feature report to set configuration
Add a Linux tool to set configuration through USB (Uses hidapi)
Change VID/PID
Atmega168 now compatible (Use Makefile.atmega168)
Code cleanup
New Gamecube button mapping
Triple click on START button now triggers the HOME button (SNES/NES/GC/N64)
Prevent a 8 bit overflow from occuring with some cheap controller clones. Fixes the 'joystick left/down direction does not work' problem, but keep in mind the overall quality of the controller won't increase. It will work as badly as it does on a real N64.
Fix N64/Gamecube communication timing (note: No effect on 'lag' or lantency)
Fix eeprom init bug (Last mapping not saved)
Improved controller auto-detection
The Wiimote accessory (Nunchuk, Classic controller, etc) has been updated (simple maintenance):
Update V-USB and fixes for modern GCC
Optimized I2C code
Minor fixes and improvements:
Prevent 8bit overflow from occuring. Helps some cheap 3rd party controllers that have the "Left not working" problem. (Thanks to this fix, those "should never be bought" controllers change from "totally unusable" to "frankly not very good")
Fix non-working timeout when waiting for the controller. The adapter now enumerate without controllers as it used to.
I won a « commodore 64 - working » on a popular auction site. Well there must have been some mistake for the machine I received did not actually work. And I wanted a working C64 right now. Returning it and trying to win another one would surely take too long... So I got a partial refund (« Working » auction converted to « As-is - untested ») and impatiently began the repair.
Visit the page to read about the repair details and an unexpected issue with my LCD TV (+ its complicated solution).
The Gamecube keyboard is now supported and can be used normally under Windows and Linux. Note that I only tested ASCII model ASC-1901P0. This keyboard has a dual-connector cable. The gray connector is for the keyboard function and the purple one for the Joystick function. To use both functionalities simultaneously, two adapters are required. As this is a Japanese style keyboard, there are a few unusual keys and many won't produce the labelled characters unless the PC is configured to use a Japanese Keyboard.
This week-end I decided to add support for the Dremcast mouse I had received during the week. But for now, it will only be partially supported (no wheel) due to technical limitations.
This weekend, I implemented frame reception and USB communication. I now have a working prototype. All that is left is cleaning up the code and drawing a schematic for release.
A few pictures to demonstrate how a N64 controller can be converted to USB by installing the circuit within.
I began writing the firmware. First step, implement a transmission routine in assembler to achieve a timing identical (or very close) to what is shown on http://mc.pp.se/dc/, but also to what I see on my Dreamcast bus with the scope. Status: Transmission is a success. But looking at the result on a scope is obviously not very useful, so the next step is implementing reception. More fun to come!
A simple tatami frame design, easy to build, to hold 5 tatami.
This small shelf, with it's shape evoking a bench hence it's name, Book Bench, lets small books vertically sit on it. Thanks to the reclined position, the books are stable and the need for bookends is done away with, saving up space.
This is a two player variation of my 4nes4snes project. The firmware is modified to expose only two controllers to the PC, preventing two extra controllers from needlessly appearing if an two player adapter is built.
The gamecube ports have been removed from the new Wii consoles and the Wii U does not have any. This new project works around the problem by using the Wiimote extension port like the classic controller does. This provides a way to play virtual console titles with the original controllers again on the Wii U and regular Wii consoles (with or without gamecube ports). 2013-01-30: Version 1.5 now available!
This new project makes it possible to use Wiimote accessories such as the Nunchuk, the Classic Controller and the Wii Motion Plus. Official versions and clones such as the wireless Nunchuk are also supported. Works as is on most operating systems thanks to the USB HID implementation.
A project for using 16 buttons (4 directonals) as a standard USB Joystick. Ideal for custom joysticks and PC-based arcade cabinets.
The new firmware version 1.3 adds support for the SNES multitap. So far, it has only been tested with a Naki Tribal tap.
With this project, it is possible to use a Gamecube controller on a NES. Perfect for a wireless solution involving the Nintendo Wavebird. And in an attempt to profit from the additional elements of the gamecube controller, the firmware has special features such as Turbo and mario-auto-run modes. It's fun!
The Famicom controller II does not have select or start buttons, but it has a built-in microphone! This new firmware makes it possible to use the microphone as a button.
I was looking to ship small electronic components in anti-static bags, reusing the bags I had on hand, but they were all too big. The obvious solution was to cut them to a reasonable size and seal the edges with a bag sealer. However, I did not want to buy one so I built this simple version using components I had in stock.
The new firmware version 2.0 adds support for the long awaited N64 Rumble Pack and Gamecube vibration feature! Special thanks to Sean Green for providing an updated device descriptor and an example main.c from his own project for me to use and finally implement this feature. Without this, I don't think I would have ever taken the time to add this feature.
A new project designed for using a Gamecube controller on the N64 console. Provides a way to solve the worn-out N64 controllers, or the problem of cables (Wavebird supported!). The firmware, with programmable button mappings and low latency algorithm insures a smooth gaming experience.
This project makes it possible to use Sega Saturn peripherals (controllers, mouse) on a PC though the USB ports. The current firmware supports the Basic controller, the analogic controller and the mouse (aka. Shuttlemouse)
Gamecube communication code more robust, increased reliability and compatibility, Japan import white Gamecube controller support confirmed.
Added Sega Paddle support (HPD-200). Auto-detected in DB9 mode. If the circuit is installed inside the controller, the two buttons can be wired independently.
New firmware version 1.3 introduces a new algorithm which was specially written to work correctly with HORI-mini N64 pads. This new release also supports changing between N64 and Gamecube controller at runtime (without reconnecting the USB cable). Also, the requirement of having a controller present for the adapter to be detected by the computer is gone.
A microcontroller circuit and software to control a powerful 3 color led (Red, Green and Blue) to obtain a variety of hues and intensities, computer-controller through USB. Forgotten for 4 years, I wrote the remaining parts, translated to english and finally published this project.
With Rumble Pack support! Now for the Atmega88 instead of the discontinued Atmega8.
Added NES fourscore support. At power up only, when a fourscore is detected in port 1, fourscore mode is entered and ports 1 and 2 are used to read up to 4 NES controllers.
Implemented Live autodetection. This allows NES and SNES controllers to be changed during use, so power cycling the adapter is no longer necessary. This feature can be disabled by closing JP1.
License changed to GPLv2.
With this new project, an Atari Jaguar controller can be converted to USB. It's also possible to build an adapter if you do not wish to alter the original hardware.
A friend wanted to play N64 games on his PC with an original controller... So I built him an adapter to do it, with Gamecube as a bonus. As usual, the project is open-source.
I received a small wireless keyboard (IR based) meant to be used with a Kenwood audio system. Wanting to use it with a PC instead, I built a receiving that connects to a PC as a standard PS/2 keyboard.
Following my single NES/SNES controller to USB project, I have been asked several times if a multi-player version would be possible. Now I finally found the time to do it.
A new project for converting a NES/SNES controller to Gamecube/Wii. The main goal is of course to be able to use the original controllers to play Wii Virtual console games. As usual, the project is open-source.
A page about how I brought back to life an Atari 130xe.
I decided to open a small store to answer demand for pre-built versions and kits of my projects. Not many products at the moment, but many are to come!
Parallel ports are getting rarer these days, so it is about time we find a new port to use for PC interfacing in replacement of the slowly disappearing parallel port. I managed to do an USB version. The solution is fully open-source so anyone with the right equipment and skills should be able to convert a controller or build an adapter.
Nintendo produced a mouse for the SNES. The mouse was sold with a game called Mario-Paint which was a drawing game (similar to paint brush). I still have a Nintendo mouse but I thought it was sad not to use it anymore so I found a way to use it with my PC.
How I built a simple projection clock from a cheap watch.
In order to improve the low scores I kept getting on the Super Mario Bros arcade, I decided to mod a NES console to make the NES version of SMB run on it. The result: A dedicated Super Mario Bros VS. console, without a cartridge (no bad contacts) with switches on the front panel to tweak some aspects of the game (A user friendly version of dip switches found on the arcade motherboard).
I build a solder fume extration system to prevent breathing too much bad stuff when soldering.
I wanted to build a measuring instrument which must be placed outside, exposed to the natural elements. So I built an anemometer...
I built a reprogrammable cartridge to be able to try out demos and homebrew games on the real thing. Pictures, schematics, PCB artwork and software tools are all available.
I felt like listening to the sound of my old AdLib sound card again, but my computer does not have an ISA slot so I built a parallell port interface.
I modified a NES cartridge to be able to reprogram it.
A page demonstrating how an SNES audio processing unit can be connected to a PC parallel port for listening to .spc files.
How I added a serial port to caller-id module to record the data on my PC.
Building a DTMF tone decoder for use with a PC through an RS-232 port.