Firepad V2 was the same case design with linear adjusment handle and old-school click-type mitsui keyboard switches. I desoldered these switches from some mechanical keyboards that one of my friends Lutfi Öner gave me as a gift.
You can check some details about Version 2 by this link (blog post is Turkish).
And finally for best gameplay experience, I upgraded switch type with cherry buttons. For that buttons to be usable with my existing PCBs, I made an adapter board by using cheap prototyping boards. Because conductive legs of the cherry switches are not comply with my PCBs.
This is the single adapted switch for my firepad PCB.
Making these adapters and soldering the legs one by one is an overwhelming process, so I designed a PCB layout for that job. I didn't yet ordered the PCBs, so I'm not sure if they'll fit good. Until then, I will continue to make handmade adapters.
Hand made adapters work well too.
I even designed 3d printed custom keycaps!
After this progress, I wired some LEDs for keys. Because I can even use translucent keycaps with these lights now.
After this touches, I finally made some Red & Black concept with keycaps to make a resemblance with most of the joysticks of the era. Red tone of my 3d printing filament didn't match perfectly but it looks all right.
And photo time with my portable BMC and Quickjoy Turbo joystick!
Standard resolution of the Commodore 64 is 320 x 200 pixel. And C64 has 2 different bitmap modes.
a. Hi-Res Mode
Resolution that meant by "Hi-Res" is 320 x 200 screen. To paint in this resolution, normally you can only use 2 colors in every 8 x 8 pixels block. You can't put a third color into a block if there is already 2 different colors are used there without totally overriding one of the existing colors on that block.
It maybe high (!) on resolution but it's very hard to create art with switcing colors in every block smoothly.
To create a bitmap with multi color combinations, C64 needs to limit it's resolution to 160 x 200 pixels by halving the horizontal pixel count by defining 1 x 1 pixel as 2 x 1 pixel.
Grid in this picture shows square area of 8 x 8 pixels. But you can see that since 1 pixels are 2 pixels wide, 8 x 8 area can only be represented by 4 x 8 pixels. I prefered to make my work on this mode.
Third and final limitation in Multicolor Mode is the color count in every 8 x 8 pixel block. You can use up to 4 different colors in every block, but one of this 4 colors should be a pre-defined fixed color in every block. Which is called "background color". By another means, you can use 3 different colors and 1 fixed background color.
In this picture you can see that I used 3 colors and additional Black color as background color.
After this 3 limitations you can create your pixel art for Commodore 64.
I used Multipaint Software for windows for this process. It is very useful and nice designed software for several graphics modes not just for C64 but for many 8-bit computers.
This time I designed interior stands to hold all compoenents in a way that made on the cardboard placement. So I measured all compoenents back, and designed holder skeleton stands. These stands will be able to fixed in a planar surface at the ground.
You can see some progress screenshots from Solidworks.
While designing the stands, I started to 3d print them and try to see if they fit and cables are OK starting from the bottom keypad and analog converter board.
To save space, I tried my best to place all components in 2 or 3 layers.
So I moved on to the upper part with analog controller.
I made the connections through test solders of the raspberry pi as much as I can, to get rid of using connectors. Because the consume to much of space.
Next I printed the stand that holds USB controller, Raspberry pi and the Screen.
It fit great!
Only menu navigation buttons set and the battery pack is remained.
And finally I printed the battery and navigation key stands with black PLA this time.
Everything in it's place but they are not fixed.
To fix everything on a wooden plate, first I extracted a bottom surface drawing from Solidworks.
Printed the drawing and checked if it's correctly scaled with the reference dimension on the drawing.
I glued the template to the wooden plate and drilled the holes with a screw (first I printed the mirrored template by mistake!).
And finally fixed!
Look at that screen with CRT Filter! Imho it's almost perfect for a 800 x 480 pixels screen.
This weekend I made an SD2IEC circuit with prototyping board and some more components, then I designed and printed a case for it.
SD2IEC is a device that fools Commodore 64 to read / write floppy disk images with an ATMEGA microcontroller. It's not a cycle exact emulation, so it has flows on using on real c64. But it has also a unique type of use by it's nature. Like sid file listing for a Sid player or transfering non-standard files between other C64 devices (for example transfering CRT files to the Easyflash Cartridge).
I checked the connections on the schematics and made layout by considering the best short connections for all components. Since the hard part here to program the microcontroller with a programmer, I passed this part with the help of a friend who already made the programming for me and sent the microcontroller to me. Thanks to Türker Gürevin!
Next, I made all the soldering according to the schematics with naked coppers and cables.
Nest step vas to make a cable for the IEC plug of the C64. I use and like flex cables for this kind of job.
And for doubling that din cables, I used a on-cable IDC connectors. This way I don't interrupt the flow and also can add parallel connections to the cable.
After completing the soldering and cable preparation, I connected the device to my real C64 and tested it. Works nice!
Playing some sid music from the listed files within the SD2IEC.
So after the electronic part is complete, I made a quick design for the case. By using Solidworks of course!
First I created rough geometry of the electronic part and the buttons etc. to see the critical clearances better while designing the case. I took measures with calipers and entered the dimensions while modeling.
After making the rough object, I completed the case design by making it in 2 parts with a wall thickness.
Even I don't like it, but this time I designed the case to be glued to stick the parts. Main reason is getting lazy but other reason is, making a case assembly by shrink-fit or screws needs to expand the outer boundry over the borders of the PCB. It means larger case. Since the electronic part doesn't need any maintenance (SD card is accessible from outside) I made it this way.
This is ithe simple button cap design for to use over the tactile buttons:
And finally I exported the files for 3d printing which took around 3 hours total for the whole set.
I'm so happy when the designed material is totally comply with the real object after manufacturing it :)
Top part and the button caps.
Gluing the parts (arrgh!)
And finally we have the device. I made the 3d printing in a low quaility. But it's better than nothing :)
Copying from SD2IEC to real floppy disk.
So this was a quick project but I was in need of that device because of it's extraordinary nature. It has unlimited capacy for a floppy disk, so you can save as much as "freezes". Freeze is a snapshot from a game or program by dumping the bits on the memory to a disk to load it anytime when you need a break. freezes created by freeze cartridges like Action Replay, Final Cartridge etc.
But since it's small but it needed a powersupply to power it up and also a controller is needed to use the device for accessing menus and loading programs or games. By itself, it is just boots. You can do nothing without additional controllers. Also, connecting real C64 joysticks to that case was hard. I had created another gizmo to use it as a joyport.
This time I decided to make a compact, all-in-one system for that device. So, I included:
A tactile joystick
A chargable battery (1 x 18650)
DSub 9 joystick ports
Micro to standard USB expansion
Mini to Standard HDMI extension
And finally an On/Off Switch
I started to solder the ports I needed by connecting the to some prototyping boards.
Raspberry Pi Zero has micro USB and mini HDMI inputs. This makes it harder to connect standart USB devices or standard USB HDMI cables to it. So I made a simple micro USB converter. I made this converter to align with the end of the HDMI port converter piece.
By adding the charge unit and the battery, I gathered all the objects, made a placement on the table to use it as a starter for the case design.
I use Solidworks to make the blockout of components and make the draft case design first.
I advance the design by checkin all clearances and cables with the real object.
When I'm confident that the bottom part is ready, I 3d printed it before finalizing the top part. Because I needed to see that everything will fit, and there is no wrong measurement. Because 3D printing of the top part will take more time.
Everything is at where it's supposed to be.
Then I finished the top part design by just adding minor details.
I'm working on a Portable Commodore (with BMC64 emulator) for a while. Finally made some progress.
First, I made a list for the electronic components and made a diagram about what I need on this device. Actually I needed everything :) Headphone jack, hdmi out, analog video out, classic joystick connectors etc.
Next I got everything together.
Next I take measurements of the components and made a sketch of case design with Solidworks.
There were too many boards, components, speaker and cables. I wasn't sure if the case will hold up everything.
I virtually made a placement.
Then, I simpllified it and converted to sheet metal desidn and printed the unfold surfaces as templates.
I cut some cardboards by this templates and taped the faces.
I put every electronic components inside (I used paper to prevent electrical shortcuts :) ) and voila! It holds the components and I can move on polishing the case design by making fixing lugs and 3d print it finally :)
And this is the portable C64 up and running. I hope I finish the plastic part soon :)
I know this is not an "art" but I love the process of this kind of "homemade" products.
TapeCart is another retro device. which is developed for Commodore 64 to flash instant data to Commodore's memory by datasette port. This port was used to load programs or games by tape cassettes through devices named as "datasettes". But tape reading process was taking too much time more than 10 minutes sometimes to load just one level of a game.
This uses same interface but by an arduino it gets rid of the motor and tape waiting constraints. You can find additional information by this links:
This case is designed for the PCB design of Tapecart SD device that made by Metallic.
Anyway, this is a DIY project but I bought this device from another person that assembles and I love it. Then I decided to design and print a case for it.
This is the modeling timelapse of the case design. First I'm modeling the blockout of the electronic part by taking measurements by calipers. This is vital to see the places where inside clearance is needed. Then I make a shell over it.
Some sketch-like renders:
After modeling, I 3d printed the parts with my Ender 3 printer and finally I make the assembly by 4 screws. I fits like a charm :)
PCB board of the device I made the case for is designed by a Turkish friend (Metallic). He didn't share the PCB yet, but if he will, I will update the page.