[1]The C64 Community Loading... This site is best viewed in a modern browser with JavaScript enabled. Modding TheC64 mini jj_0 The [2]Sunxi site has a nice description of how to connect to the serial port and access the root filesystem on nand. If you do this (and are willing to void your warranty and at your own risk) you can experiment with adding games and joysticks, changing the music that's playing etc. Important directories The emulator: `/usr/bin/the64. This seems to be a combination of a Vice clone and menu/game loader. Game data: - Game description files: /usr/share/the64/games. Each game has a text file that contains the game title, description in various languages, game cover and screenshots, joystick settings etc. - Game covers are in /usr/share/the64/games/covers, screenshots in /usr/share/the64/games/screens - Game code is in /usr/share/the64/games/games. Each game is a compressed Vice snapshot file. Joysitcks are recognised if they are found in /usr/share/the64/ui/data/gamecontrollerdb.txt. Game snapshots slots are saved in a directory per game/var/lib/the64/profile/0/saves/. Adding games The easiest way to add a game is to first load it via BASIC and then save a snapshot. You can then copy the .vsf to the games directory as /usr/share/the64/games/games/.vsf.gz, and the screenshot .png to /usr/share/the64/games/games/-01.png. Then you have to create a /usr/share/the64/games/.tgsfile as well, taking an existing one as exampe. Adding joysticks To add e.g. the much-coveted Speedlink Pro, add the following line to /usr/share/the64/ui/data/gamecontrollerdb.txt: 030000000b0400003365000000010000,Speed-Link Competition Pro,a:b1,b:b5,x:b6,y:b7,back:b3,start:b2,lefttrigger:b0,righttrigger:b4,leftx:a0,lefty:a1,platform:Linux, The 32-digit number is what identifies the joystick and is based on how the joystick identifies itself on USB including the HID version. E.g. my Speedlink reports itself (from dmesg) as: `generic-usb 0003:040B:6533.0002: input: USB HID v1.00 Joystick [A SPEED-LINK Competition Pro] To get the number reverse the (2-byte) order of each of the first 3 numbers, add four 0's after each number and add the reverse-order HID version number plus four 0's. Then you have to experiment with the button (b0..x) and axis (a0..ax) assignment. For the Speedlink I used the left firebutton as fier, the right firebutton as the 'load' button (left small red button on the original joystick), and the two triangular buttons as 'menu' and 'save'. If you don't want to modify the nand filesystem you can also copy it to an USB drive and experiment with that: 1. Create two partitions on the USB stick, the first one a FAT that you'll use for storing whatever THEC64-drive8.d64 you use. The second one should be an ext4partition 2. Insert the USB stick a TheC64 USB slot 3. At the command prompt copy the root filesystem to it: Assuming your ext4 USB partition is sda2 teh command isdd if=/dev/nandb of=/dev/sda2 4. Use the trick form the Sunxi page to use this as root filesystem, in u-boot enter (setenv nand_root /dev/sda2). Note you have this at every reboot, the saveenvcommand doesn't work. -------------------------------------------------------------------------- Darbyram [3]jj_0 Is there a way of dumping nand to windows via putty? -------------------------------------------------------------------------- walnutwhip ill wait until someone creates a fully fledged utility like the ones for nes and snes mini -------------------------------------------------------------------------- Jammet What do you mean with "vice clone"? According to the previous information we've seen, this would be wholly different emulator. Other than that, nice to see there are efforts underway to hack in the support for some of the more popular devices! I was considering buying that (pricey) Joystick. Maybe official support will follow soon. -------------------------------------------------------------------------- jj_0 At startup it outputs things like: Loading system file '/usr/lib/vice/C64/kernal'. C64MEM: Kernal rev #3. Loading system file '/usr/lib/vice/C64/basic. Loading system file '/usr/lib/vice/C64/chargen'. So if it quacks like a duck... It's probably based on Vice but more closely integrated with the A20 SoC? -------------------------------------------------------------------------- Gurce [4]jj_0 Wow, thanks for sharing your insights, that's a real "game-changer", literally! :-D -------------------------------------------------------------------------- Jammet You could be right, but we'd require some more than this. Not much more, but ... It's true that VICE does output these exact lines as well. And it would be helpful to have some statement by Retro themselves. Retro, can you clarify on this, please? You went the extra mile that everything about the games and their licensing checks out, so I hope the emulation core is not exempt from this. Publishing the sources, if bound by the GPL comes at no extra cost, so this shouldn't be a problem. -------------------------------------------------------------------------- jj_0 [5]Gurce Thanks :-) Kudos go to the person who did the Sunxi page, that's what started me off. -------------------------------------------------------------------------- spannernick1 [6]jj_0 Are you on youtube,if not its ok,can you made a video and upload it somewhere and I put it on my channel,if you don't mind of course.. ?? [7]:D It would be interesting video.. [8]:D Oh one more thing did you use a password to get in to Linux,like sudo whatever...?? -------------------------------------------------------------------------- jj_0 The link above doesn't get you to the right page, try [9]this one instead. -------------------------------------------------------------------------- spannernick1 Basically you turn your C64 Mini into a Raspberry PI3,thats how you add stuff too that too,Well you use the a network share,Yep it's probably running the same emulator but it been modified...Nice work man.. [10]:D -------------------------------------------------------------------------- spannernick1 You do know when you save a game it saves the d64 image with it too..[11]:D -------------------------------------------------------------------------- jj_0 [12]spannernick1 Where does it save to a .D64? Or do you mean with games you load from THEC64-drive8.d64? -------------------------------------------------------------------------- spinal I'm not going to ask for files here, but, does it count as copyright infringement to obtain a copy of the files you have on your own device if you receive that copy from someone you never met at the other side of the country/world? (just asking for a friend :-P) -------------------------------------------------------------------------- spannernick1 [13]spinal Well Nintendo would say its copyright,but they would.Dam them.. [14]:D If you have the real thing or game I don't see it been a problem.. [15]:) -------------------------------------------------------------------------- spannernick1 How would I connect it to a FTDI232 board,I have one here..? and what program do I use to access the file system and copy it or edit it...(OK just realized something,you can downgrade your system with this,if you wanted to) Can I connect to it with a Windows 10 PC..?? -------------------------------------------------------------------------- jj_0 [16]spannernick1 From Windows 10 you would use a program like PuTTY to access the serial port console. -------------------------------------------------------------------------- spannernick1 In future updates can't Retro Games block the serial port..? -------------------------------------------------------------------------- spannernick1 So... "Pins are, GND, RX, TX, 3v3" so to connect it to a FTDI232 you wound connect GND to GND,RX to RXD,TX to TXD,3v3 to 3v3 on the FTDI232... [17]:D [18]FTDI232 -------------------------------------------------------------------------- Darbyram [19]spannernick1 I have just ordered one of these. Just need to find how to use it. Lol I have a general idea how too ;-) -------------------------------------------------------------------------- jj_0 [20]spannernick1 On the FTDI232 don't connect the 3.3v pin to TheC64, but provide power to TheC64 from the mini USB connector. -------------------------------------------------------------------------- spannernick1 Oh and The C64 Mini board is based on this one,A20-OLinuXino-LIME2,they used this one for the prototype.. [21]:D someone might want to add it to the Wiki OPEN SOURCE HARDWARE EMBEDDED ARM LINUX SINGLE BOARD COMPUTER WITH ALLWINNER A20 DUAL CORE CORTEX-A7 1GB RAM AND GIGABIT ETHERNET [22]A20-OLinuXino-LIME2 -------------------------------------------------------------------------- Gurce [23]spannernick1 Yeah, I've been meaning to add a page to the wiki for mods, ok, done [24]:) * [25]https://gurce.net/c64mini/doku.php?id=modding -------------------------------------------------------------------------- spannernick1 [26]jj_0 When you do a save state it saves the D64 image too,I mean.. [27]:D You use Putty,same as the Raspberry PI3.. [28]:D Can I use a FTDI232 to connect to the serial Port..? -------------------------------------------------------------------------- [29]Next Page » References Visible links 1. https://community.thec64.com/ 2. http://linux-sunxi.org/Retro_Games_Ltd_RGL001%60enter 3. https://community.thec64.com/d/338/1 4. https://community.thec64.com/d/338/4 5. https://community.thec64.com/d/338/6 6. https://community.thec64.com/d/338/7 9. http://linux-sunxi.org/Retro_Games_Ltd_RGL001 12. https://community.thec64.com/d/338/10 13. https://community.thec64.com/d/338/11 16. https://community.thec64.com/d/338/12 19. https://community.thec64.com/d/338/16 20. https://community.thec64.com/d/338/16 23. https://community.thec64.com/d/338/17 25. https://gurce.net/c64mini/doku.php?id=modding 26. https://community.thec64.com/d/338/19 29. https://community.thec64.com/d/338?page=2&id=338-modding-thec64-mini [1]The C64 Community Loading... This site is best viewed in a modern browser with JavaScript enabled. Modding TheC64 mini spannernick1 [2]jj_0 When you do a save state it saves the D64 image too,I mean.. [3]:D You use Putty,same as the Raspberry PI3.. [4]:D Can I use a FTDI232 to connect to the serial Port..? -------------------------------------------------------------------------- Gurce [5]spannernick1 Yeah, I've been meaning to add a page to the wiki for mods, ok, done [6]:) * [7]https://gurce.net/c64mini/doku.php?id=modding -------------------------------------------------------------------------- spannernick1 I see if I can use FTDI232 tomorrow and post back my findings.. [8]:D -------------------------------------------------------------------------- jj_0 [9]spannernick1 On the FTDI232 don't connect the 3.3v pin to TheC64, but provide power to TheC64 from the mini USB connector. -------------------------------------------------------------------------- jamesds For anybody who's done this, any chance of a list of the controllers in the stock gamecontrollerdb.txt file? It'd be really useful to know for sure exactly what controllers are actually supported on the system. -------------------------------------------------------------------------- jj_0 [10]jamesds I can understand you would want to see it but I'm a bit hesitant to publish it. It's created by Retro Games so probably under copyright? It would be much better if [11]@RetroGamesLtd would publish it. -------------------------------------------------------------------------- spannernick1 Power on the board while continuously sending 's' via the serial console to interrupt u-boot....where is the serial console in PuTTY..????? I need a answer now,I have setup the FTDI232 and it connected to TheC64 Mini and I don't get the U Boot trick thing...???? I have until 6 pm then have to do the rest tomorrow,I connected the RX to TX like it says in See UART howto [12]http://linux-sunxi.org/UART -------------------------------------------------------------------------- Darbyram [13]spannernick1 Have you made sure the connection type on putty is highlighted on serial? -------------------------------------------------------------------------- spannernick1 I guess you run Putty and hold down s while TheC64 Mini is booting,is that right cause nothing is happened, I have wired the board properly,it says GND is the top pin in the photo and the bottom pin is 3v3 ...is the right..?? So the square shaped hole at the bottom is 3v3. Do I have to have it connected to the TV to do this..? The UART is very easy to interface. It has standard 0.01" American pin spacing and is already drilled. You can use standard header pins or a JST connector. Pins are, in order from top to bottom as per photo; GND, RX, TX, 3v3 In this photo, the customer has already added the UART pins. The board mounts upside down so the pins were placed on the reverse side to allow ease of access. [14]Top photo -------------------------------------------------------------------------- spannernick1 Yeah I know,its just not working,don't know why..?? -------------------------------------------------------------------------- Darbyram [15]spannernick1 did you manage to sort it? -------------------------------------------------------------------------- jj_0 Some things you can try: In your photo, from top to bottom the pins are: 3.3v, Rx, Tx, GND. You can verify 3.3v and GND with a multimeter. To test if your FTDI232 adapter works correctly: 1. Did you install a driver for the FTDI232? 2. Did you connect to the correct serial port? See for example [16]this explanation 3. Did you set up PuTTY serial with speed 115200, data bits 8, stop bits 1, parity none, flow control none in the serial settings? 4. If you disconnect the C64Mini, and connect the Rx and Tx pins of your FTDI232 together and you type something in the PuTTY window does what you type appear in the window? 5. f you disconnect Rx from Tx and type something does it no longer appear in the window? Then if you have confirmed the FTDI232 works: * Connect the GND pin to the C64Mini GND * Connect the Rx pin to the C64Mini Tx * The C64Mini doesn't have to be connected to the TV * Switch on the C64Mini. The boot messages should show in PuTTY. If they don't try the other pin on the C64Mini When you have the C64Mini Tx correctly identified you can then connect the C64Mini Rx pin as well. Then first keep 's' pressed and then switch on the C64Mini. I hope this helps. -------------------------------------------------------------------------- spannernick1 [17]jj_0 jj_021 hours ago Some things you can try: In your photo, from top to bottom the pins are: 3.3v, Rx, Tx, GND. You can verify 3.3v and GND with a multimeter. in the wiki it says.. Pins are, in order from top to bottom as per photo; GND, RX, TX, 3v3 So then I have the ground and 3.3v round the wrong way...?????? I have set up a forum its here.. [18]http://c64minicommunity.freeforums.net/thread/4/modding-thec64-mini?page=1&scrollTo=12 -------------------------------------------------------------------------- jj_0 As the forum is about to close I've recreated the first post at [19]Lemon64 -------------------------------------------------------------------------- ch1ller [20]jj_0 Hi jj, could you pls. also update the Link in the post on Lemon64 because its not working... You pasted another link a day later, but that post will belost with closure of this Forum. It would also be great to have a summary of the most important facts from this Thread in 1st post. Like how to connect the UART Pins C64 Board <-> FTDI or the Putty Settings. So that someone new has all the needed informations in one spot. Btw. Im still confused what is correct now RX <-> TX crossed or RX->RX + TX ->TX direct when using FTDI Module What is meant by "On the FTDI232 don't connect the 3.3v pin to TheC64, but provide power to TheC64 from the mini USB connector." Just consider someone like me who never ever heard of UART or FTDI before and hast to get things sorted out and running now [21]:) Thnx -------------------------------------------------------------------------- fatgit I was gonna ask a good place to continue C64 mini chat - let's keep going there... -------------------------------------------------------------------------- tomxp411 Yes, the Lemon site seems like a good choice. The Facebook group is also very active, with people talking about programming, some users sharing games, and lots of open, frank discussion. [22]https://www.facebook.com/groups/209280506324242/ -------------------------------------------------------------------------- Retro-Peter No, crossing TX-RX is only neccessary when You use 2 UARTS. To Connecti a FTDI-Adapter directly to the board, just use the lines directly, GND - GND, RX - RX , and TX - TX. You must not connect 3.3V or VBUS, if the other (US [23]B) end is powered through the USB. -------------------------------------------------------------------------- jj_0 [24]Retro-Peter This is confusing me. I don't have a FTDI232 myself so couldn't try it out but [25]this SparkFun tutorial seems to connect Tx to Rx and vice versa. [26]ch1ller Link at Lemon64 now fixed. Regarding RX - Tx or Rx-Rx + Tx-Tx jsut hook up GND first. Then start with the C64Mini Tx pin to Rx and if that doesn't work Tx. -------------------------------------------------------------------------- Retro-Peter For the connection FTDI-Adapter to the C64Mini You need only 3 connections: GND to GND RX to RX TX to TX The FTDI's are powered by the USB-Port (PC or else), so a connection 3.3V between C64Mini and the FTDI could kill Your adapter or else. But beware the FTDI should be a 3.3V's type ! -------------------------------------------------------------------------- ch1ller [27]Retro-Peter Hi Peter, thank you. [28]FTDI The FTDI has a Jumper for 3.3 / 5V. Guess setting that Jumper to 3.3V should be okay? -------------------------------------------------------------------------- [29]« Previous Page [30]Next Page » References Visible links 1. https://community.thec64.com/ 2. https://community.thec64.com/d/338/19 5. https://community.thec64.com/d/338/17 7. https://gurce.net/c64mini/doku.php?id=modding 9. https://community.thec64.com/d/338/16 10. https://community.thec64.com/d/338/25 11. https://community.thec64.com/u/RetroGamesLtd 12. http://linux-sunxi.org/UART 13. https://community.thec64.com/d/338/27 15. https://community.thec64.com/d/338/30 16. https://software.intel.com/en-us/setting-up-serial-terminal-on-system-with-windows 17. https://community.thec64.com/d/338/31 18. http://c64minicommunity.freeforums.net/thread/4/modding-thec64-mini?page=1&scrollTo=12 19. http://www.lemon64.com/forum/viewtopic.php?p=824501#824501 20. https://community.thec64.com/d/338/32 22. https://www.facebook.com/groups/209280506324242/ 24. https://community.thec64.com/d/338/35 25. https://learn.sparkfun.com/tutorials/sparkfun-usb-to-serial-uart-boards-hookup-guide 26. https://community.thec64.com/d/338/36 27. https://community.thec64.com/d/338/37 29. https://community.thec64.com/d/338?page=1&id=338-modding-thec64-mini 30. https://community.thec64.com/d/338?page=3&id=338-modding-thec64-mini [1]The C64 Community Loading... This site is best viewed in a modern browser with JavaScript enabled. Modding TheC64 mini spinal Has anyone here managed to backup the files from their C64 yet? -------------------------------------------------------------------------- Darbyram I made a backup of the nand as instructed, but not sure how to read it in windows as of yet -------------------------------------------------------------------------- spannernick1 [2]jj_0 jj_021 hours ago Some things you can try: In your photo, from top to bottom the pins are: 3.3v, Rx, Tx, GND. You can verify 3.3v and GND with a multimeter. in the wiki it says.. Pins are, in order from top to bottom as per photo; GND, RX, TX, 3v3 So then I have the ground and 3.3v round the wrong way...?????? I have set up a forum its here.. [3]http://c64minicommunity.freeforums.net/thread/4/modding-thec64-mini?page=1&scrollTo=12 -------------------------------------------------------------------------- Darbyram switch them around but dont put anything in the 3v3 -------------------------------------------------------------------------- Darbyram [4]jj_0 Is there a way of dumping nand to windows via putty? -------------------------------------------------------------------------- jj_0 [5]Darbyram The best way to dump the nand is to: 1. Prepare an USB drive with 2 partitions. They can both be FAT partitions that you can read in Windows 2. Insert the USB drive in TheC64Mini 3. Connect to TheC64Mini with the UART & PuTTY and login as root 4. Mount the 2nd partition of the USB drive to the /mnt directory: mount /dev/sda2 /mnt 5. Copy the nand parts to the USB drive with the following command: cp /dev/nand* /mnt Though nandc doesn't contain anything AFAIK 6. Unmount the drive: umount /mnt 7. Power down TheC64Mini Now you should have files nanda, nandb and nandc omn the USB drive visible from Windows. You can;t do much with them though but it's handy as a backup. - nanda: Linux kernel - nandb: Root filesystem, ext2 format - nandc: Don't know, probably spare capacity If you copy the nandb filesystem to a USB drive as per the first post you can mount it in Windows if you install an ext2 driver. -------------------------------------------------------------------------- Darbyram [6]jj_0 you sir are a Genius.. thankyou ;-) -------------------------------------------------------------------------- tomxp411 Does anyone have an image yet that we can load onto a flash drive without needing to solder a UART onto the board? I'm certainly capable of doing that myself, but a lot of people may not be comfortable doing that - and it would make modding a lot easier if we had a ready to download image... I don't even care if the pre-packaged games are removed from the image. I'd be fine if the only thing on the modded carousel is C64 BASIC. It would be nice to just not have to take a soldering iron to a brand new piece of hardware that can be fairly easily damaged. -------------------------------------------------------------------------- jj_0 [7]tomxp411 This wouldn't really work. First of all the image would still contain stuff that is probably copyrighted by Retro Games. Second, to use such an image you would still need to use the UART connection as currently AFAIK the only way to boot from an USB drive is via interrupting the U-Boot and changing the root drive to USB. Thirdly you don't need to solder on the UART<-> USB connector, you can also temporarily use some wires or clip-on hooks. Or use [8]hammer pin headers (which is what I did) though you have to split these in two as it's a double row. -------------------------------------------------------------------------- spannernick1 This post is here now.. [9]http://c64minicommunity.freeforums.net/thread/4/modding-thec64-mini?page=1&scrollTo=95 -------------------------------------------------------------------------- [10]« Previous Page References Visible links 1. https://community.thec64.com/ 2. https://community.thec64.com/d/338/31 3. http://c64minicommunity.freeforums.net/thread/4/modding-thec64-mini?page=1&scrollTo=12 4. https://community.thec64.com/d/338/1 5. https://community.thec64.com/d/338/45 6. https://community.thec64.com/d/338/46 7. https://community.thec64.com/d/338/47 8. https://shop.pimoroni.com/products/gpio-hammer-header 9. http://c64minicommunity.freeforums.net/thread/4/modding-thec64-mini?page=1&scrollTo=95 10. https://community.thec64.com/d/338?page=2&id=338-modding-thec64-mini