User Tools

Site Tools






mega65_prerelease_starter_s_manual

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revisionBoth sides next revision
mega65_prerelease_starter_s_manual [2016/06/18 02:13]
– created cece
mega65_prerelease_starter_s_manual [2016/06/18 02:23]
– Updated to Deft's v0.3 of document cece
Line 1: Line 1:
-  * Version 0.1 By Ralph Egas+====== MEGA65 Prerelease Starter’s Manual ====== 
 + 
 +  * Version 0.1 by Ralph Egas 
 +  * Version 0.2-0.3 by Deft? Others? (via google docs)
   * Additional edits by wiki contributors (see edit history for authors)   * Additional edits by wiki contributors (see edit history for authors)
  
Line 18: Line 21:
 In order to type on the MEGA65 (and do anything, really) you need to attach a USB keyboard to the USB socket that sits between the power connector and the Ethernet port. In order to type on the MEGA65 (and do anything, really) you need to attach a USB keyboard to the USB socket that sits between the power connector and the Ethernet port.
  
-The Nexys(tm)4 DDR board has a limited load capacity on its internal USB bus however and as a result USB keyboards with embedded USB hubs tend to drain too much power. It’s strongly advised to use a simple / old PC (Windows) keyboard without active LEDs or any other parts that consume any power at all.+It’s important to use a simple / old PC (Windows) keyboard without an internal USB hub due to the USB controller on the Nexys(tm)4 DDR board lacking support for detecting more than one device, e.g. a keyboard and a hub, at the same time.
  
  
Line 32: Line 35:
 ===== SD Micro card ===== ===== SD Micro card =====
  
-Plain SD Micro cards up until 4GB are currently officially supported. Some 4GB cards are known not to play nice though, so right now the safest bet is an (old) SD Micro up till 2GB. Cards like that may be hard to get by in your local store but there’s a ton of opportunity to get them from eBay. Most importantly, the card should not be of the newer SDHC or SDXC kind that support higher capacities, at least not for the time being.+Plain SD Micro cards up to 4GB are currently officially supported. Some 4GB cards are known not to play nice though, so right now the safest bet is an (old) SD Micro up to 2GB. Cards like that may be hard to get by in your local store but there’s a ton of opportunity to get them from eBay. Most importantly, the card should not be of the newer SDHC or SDXC kind that support higher capacities, at least not for the time being.
  
  
Line 60: Line 63:
  
 JP2 - Located closest to the ‘XILINX’ and ‘ANALOG DEVICES’ logo on the Nexys4 DDR board. Set this jumper to ‘SD’ in order for the bitstream to be loaded and configured from SD card rather than from a USB stick. At the time of writing the core files only support booting from SD. You’ll need to hook up a keyboard to the USB port anyway. JP2 - Located closest to the ‘XILINX’ and ‘ANALOG DEVICES’ logo on the Nexys4 DDR board. Set this jumper to ‘SD’ in order for the bitstream to be loaded and configured from SD card rather than from a USB stick. At the time of writing the core files only support booting from SD. You’ll need to hook up a keyboard to the USB port anyway.
- 
  
 JP3 - Located near the +5V DC power connector. Set this jumper to ‘USB’ in order to power the Nexys4 DDR board over a USB cable, for instance by connecting the packaged cable to a PC or laptop. In this case you should hook up your USB power cable to the USB micro connector close to the +5V DC power connector just around the closest corner on your board. Alternatively, by setting the jumper to ‘WALL’ the board gets powered by the +5V DC power connecter instead. For the latter please acquire and connect a power adaptor capable of providing +5V DC on the core pin and GND on the shield. Please refer to Digilent’s website for more specs on power consumption specifics and resulting adaptor needs. JP3 - Located near the +5V DC power connector. Set this jumper to ‘USB’ in order to power the Nexys4 DDR board over a USB cable, for instance by connecting the packaged cable to a PC or laptop. In this case you should hook up your USB power cable to the USB micro connector close to the +5V DC power connector just around the closest corner on your board. Alternatively, by setting the jumper to ‘WALL’ the board gets powered by the +5V DC power connecter instead. For the latter please acquire and connect a power adaptor capable of providing +5V DC on the core pin and GND on the shield. Please refer to Digilent’s website for more specs on power consumption specifics and resulting adaptor needs.
Line 99: Line 101:
 - The bitstream file, e.g. ‘20150716ddr.bit’ - The bitstream file, e.g. ‘20150716ddr.bit’
  
-- A C65 ROM that got extracted from a 1991 prototype C65, e.g. ‘910111.bin’ that can be obtained here for instance: ftp://www.zimmers.net/pub/cbm/firmware/computers/c65/index.html. Please rename this file to ‘C65GS.ROM’ after downloading first and put it under that name on the SD.+- A C65 ROM that got extracted from a 1991 prototype C65, e.g. ‘910111.bin’ that can be obtained here for instance: ftp://www.zimmers.net/pub/cbm/firmware/computers/c65/index.html. Please rename this file to ‘C65GS.ROM’ (or ‘MEGA65.ROM’ for bitstreams from September 2015 onwards) after downloading first and put it under that name on the SD.
  
-- [OPTIONAL] A C64 character rom file of 4KB that got extracted from a C64 or emulator or got custom made, e.g. ‘c64.bin’ that can be obtained here: ftp://www.zimmers.net/pub/cbm/firmware/characters/index.html. Please rename this file to ‘CHARROM.G65’ after downloading first and put it under that name on the SD. The bitstream has an alternative C64-like character set embedded so this file is entirely optional and will mostly be used to provide custom character sets for personalising your MEGA65.+- [OPTIONAL] A C64 character rom file of 4KB that got extracted from a C64 or emulator or got custom made, e.g. ‘c64.bin’ that can be obtained here: ftp://www.zimmers.net/pub/cbm/firmware/characters/index.html. Please rename this file to ‘CHARROM.G65’ (or ‘CHARROM.M65’ for bitstreams from September 2015 onwards) after downloading first and put it under that name on the SD. The bitstream has an alternative C64-like character set embedded so this file is entirely optional and will mostly be used to provide custom character sets for personalising your MEGA65.
  
-- [OPTIONAL] A boot logo file if you have one available. In the future a tool will be provided to create custom logos. Bitstream updates however are occasionally packed with a boot logo you can use freely. If you have such file available please make sure it is named ‘BOOTLOGO.G65’ before uploading it to your SD.+- [OPTIONAL] A boot logo file if you have one available. In the future a tool will be provided to create custom logos. Bitstream updates however are occasionally packed with a boot logo you can use freely. If you have such file available please make sure it is named ‘BOOTLOGO.G65’ (or ‘BOOTLOGO65.M65’ for bitstreams from September 2015 onwards) before uploading it to your SD.
  
-- [OPTIONAL] A D81 disk file that can be mounted on the MEGA65. To automatically have the system mount your favourite D81 disk file, please make sure it is named ‘C65GS.D81’ before uploading it to your SD.+- [OPTIONAL] A D81 disk file that can be mounted on the MEGA65. To automatically have the system mount your favourite D81 disk file, please make sure it is named ‘C65GS.D81’ (or ‘MEGA65.D81’ for bitstreams from September 2015 onwards) before uploading it to your SD. A yellow border in C65 mode indicates the presence of an automount disk image.
  
 ** After putting the files on SD don’t forget to eject it safely first especially since the SD drivers are sensitive to any kind of anomalies which is also why it’s important to stick to the order of files as presented above. ** After putting the files on SD don’t forget to eject it safely first especially since the SD drivers are sensitive to any kind of anomalies which is also why it’s important to stick to the order of files as presented above.
 +
 +** At the time of writing there’s a known issue with regards to auto-mounting where you still have to manually mount the ‘C65GS.D81’ (or ‘MEGA65.D81’ for bitstreams from September 2015 onwards) image by using ‘SYS49152’ in C64 mode. Without this operation the disk is presumed to be mounted however its directory contents will be garbled. When successfully re-mounted, the disk image will be available after a reset / warm boot. Interestingly, in the presence of a ‘C65GS.D81’ file, any other disk image mounted with ‘SYS49152’ will be auto-mounted after a reset.
  
  
 ===== Obtaining a D81 virtual disk file ===== ===== Obtaining a D81 virtual disk file =====
  
-Many D81 disk files can be found on the internet. Simply Googleing ‘d81 disk files’ will surely get you plentiful. An alternative way to obtain a D81 file is create one of your own using DirMaster. It features a simple drag-and-drop interface that allows you to copy C64 / C65 specific file to your virtual disk. It’s entirely possible to download C64 games or applications that are in the public domain or that were commercially abandoned and run them on your MEGA65 in C64 mode. At the time of writing probably not all software is working 100% yet but we’re getting close.+Many D81 disk files can be found on the internet. Simply Google-ing ‘d81 disk files’ will surely get you plentiful. An alternative way to obtain a D81 file is create one of your own using DirMaster. It features a simple drag-and-drop interface that allows you to copy C64 / C65 specific file to your virtual disk. It’s entirely possible to download C64 games or applications that are in the public domain or that were commercially abandoned and run them on your MEGA65 in C64 mode. At the time of writing probably not all software is working 100% yet but we’re getting close.
  
  
Line 125: Line 129:
 When Kickstart is booting the initial OS bootstrap code it will display the Kickstart version at the top, e.g. ‘C65GS KICKSTART V00.03’. If this doesn’t happen chances are there’s something wrong with the bitstream file, the SD card isn’t inserted or any or all jumpers are in the wrong positions. When Kickstart is booting the initial OS bootstrap code it will display the Kickstart version at the top, e.g. ‘C65GS KICKSTART V00.03’. If this doesn’t happen chances are there’s something wrong with the bitstream file, the SD card isn’t inserted or any or all jumpers are in the wrong positions.
  
-Once it succeeds Kickstart will dynamically show what it’s up to until it successfully loads and switches to the code in the mandatory ’C65GS.ROM’ file that in turn shows a familiar C64-like start screen. In the process it will have optionally loaded the ‘BOOTLOGO.G65’ (and displayed it to the left of the Kickstart version text), mounted the C65GS.D81 file if present and overwritten its internal character rom with ‘CHARROM.G65’ if such file is present.+Once it succeeds Kickstart will dynamically show what it’s up to until it successfully loads and switches to the code in the mandatory ’C65GS.ROM’ (or ‘MEGA65.ROM’) file that in turn shows a familiar C64-like start screen. In the process it will have optionally loaded the ‘BOOTLOGO.G65’ (or ‘BOOTLOGO.M65’) and displayed it to the left of the Kickstart version text, mounted the C65GS.D81 (or ‘MEGA65.D81’) file if present and overwritten its internal character rom with ‘CHARROM.G65’ (or ‘CHARROM.M65’) if such file is present.
  
 In case Kickstart doesn’t make it to the C65 start screen then either a proper ‘C65GS.ROM’ is missing or the SD Micro card wasn’t properly formatted as discussed in Chapter 3. The partitioning and formatting has to be carried out *exactly* as described earlier due to the sensitive nature of the SD handling in the system while the MEGA65 is a work in progress. In case Kickstart doesn’t make it to the C65 start screen then either a proper ‘C65GS.ROM’ is missing or the SD Micro card wasn’t properly formatted as discussed in Chapter 3. The partitioning and formatting has to be carried out *exactly* as described earlier due to the sensitive nature of the SD handling in the system while the MEGA65 is a work in progress.
Line 137: Line 141:
 ===== Reset ===== ===== Reset =====
  
-The button next to the program button has a label underneath it called ‘CPU RESET’. This button actually resets the MEGA65 that is hosted already on the FPGA. The FPGA will not be reprogrammed in this case, it’s just Kickstart that will carry out it’s initial bootstrap procedure. Basically this comes close to resetting an original C64 or C65 back in the day and the FPGA instead can be seen as a ‘host’ a virtual C64-like computer lives in.+The button next to the program button has a label underneath it called ‘CPU RESET’. This button actually resets the MEGA65 that is hosted already on the FPGA. The FPGA will not be reprogrammed in this case, it’s just Kickstart that will carry out it’s initial bootstrap procedure. Basically this comes close to resetting an original C64 or C65 back in the day and the FPGA instead can be seen as a ‘host’ a virtual C64-like computer lives in. Alternatively a CPU reset will also be carried out after holding the ‘RESTORE’ key, which is mapped to ‘Page Up’ on a USB PC keyboard, for 2 seconds before letting it go.
  
  
Line 148: Line 152:
 http://www.zimmers.net/cbmpics/cbm/c65/c65manual.txt. http://www.zimmers.net/cbmpics/cbm/c65/c65manual.txt.
  
-In order to load files from a mounted D81 it’s necessary to first switch to C64 mode by typing ‘GO64’ followed by ‘RETURN’ / ‘ENTER’. An alternative to invoking the C64 mode is by resetting the CPU while holding the ‘C=‘ key, currently mapped to the left ’CTRL’ on the USB PC keyboard. Resetting can be done by pressing the hardware button on the Nexys4 DDR board as described in Chapter 4. Alternatively a CPU reset will also be carried out after holding the ‘RESTORE’ key, which is mapped to ‘Page Up’ on a USB PC keyboard, for 2 seconds before letting it go.+In order to load files from a mounted D81 it’s necessary to first switch to C64 mode by typing ‘GO64’ followed by ‘RETURN’ / ‘ENTER’. An alternative to invoking the C64 mode is by resetting the CPU while holding the ‘C=‘ key, currently mapped to the left ’CTRL’ on the USB PC keyboard. Resetting can be done by pressing the hardware button on the Nexys4 DDR board or holding the ‘RESTORE’ key as described in Chapter 4.
  
  
Line 155: Line 159:
 In this mode you can play some of the greatest games of all time! Before that happens you’ll have to mount a D81 disk file to become available as a disk in the C64 environment. In this mode you can play some of the greatest games of all time! Before that happens you’ll have to mount a D81 disk file to become available as a disk in the C64 environment.
  
-Type SYS49152 to invoke the Disk Chooser routine that stays resident in the C64 RAM by default and until it is overwritten. If you’ve provided a C65GS.D81 file on the SD it will show some lines of text on the screen followed by ‘MOUNT C65GS   ?’. Press ‘Y’ on your keyboard and the text ‘DISK MOUNTED’ should appear underneath.+Type SYS49152 to invoke the Disk Chooser routine that stays resident in the C64 RAM by default and until it is overwritten. If you’ve provided a .D81 file on the SD it will show some lines of text on the screen followed by ‘MOUNT [NAME OF DISKFILE]   ?’. Press ‘Y’ on your keyboard and the text ‘DISK MOUNTED’ should appear underneath.
  
 At this point you can keep working in the C64 mode or reset the machine (without holding the ‘C=‘ key) and go back to C65 mode. At this point you can keep working in the C64 mode or reset the machine (without holding the ‘C=‘ key) and go back to C65 mode.
  
-In either mode you can now show the disk’s contents by typing ‘LOAD”$”,8’ and ‘RETURN’ / ‘ENTER’, followed by ‘LIST’ and ‘RETURN’ / ‘ENTER.+In either mode you can now show the disk’s contents by typing ‘LOAD”$”’ and ‘RETURN’ / ‘ENTER’, followed by ‘LIST’ and ‘RETURN’ / ‘ENTER. As the C65 no longer supports loading from tape there is no more need to type ‘LOAD”$”,8’. 
 + 
 +HINT: It is even possible to skip the trailing quotation mark. If you have a loader menu as first program in your disk image and after a cold boot you have loaded it once with ‘LOAD”:*’, after a reset (warm boot) you can just press ‘SHIFT’ followed by ‘RUN/STOP’, currently mapped to ’ESC’ on the USB PC keyboard, (which results in ‘LOAD”*’) to reload it! 
  
-To load a specific file on your disk type ‘LOAD”<filename>,8’ and ‘RETURN’ / ‘ENTER’, where <filename> is replaced with the actual name of the file you’d like to load. The specific file name will be enclosed by “” and in order to load a file it needs to be of the ‘PRG’ type.+To load a specific file on your disk type ‘LOAD”<filename>”’ and ‘RETURN’ / ‘ENTER’, where <filename> is replaced with the actual name of the file you’d like to load. The specific file name will be enclosed by “” and in order to load a file it needs to be of the ‘PRG’ type.
  
 Once loaded you can type ‘LIST’ followed by ‘RETURN’ / ‘ENTER’ to see the BASIC code of the program. In case you loaded a game the BASIC program will typically consist of just one line containing a ‘SYS’ keyword followed by an address. Once loaded you can type ‘LIST’ followed by ‘RETURN’ / ‘ENTER’ to see the BASIC code of the program. In case you loaded a game the BASIC program will typically consist of just one line containing a ‘SYS’ keyword followed by an address.
Line 167: Line 173:
 Type ‘RUN’ followed by ‘RETURN’ / ‘ENTER’ to execute the BASIC program and presto! Type ‘RUN’ followed by ‘RETURN’ / ‘ENTER’ to execute the BASIC program and presto!
  
-The above is just a typical example of a first encounter with the system. The internet however is flooded with ideas and concepts behind the C65 and even more so C64 in case you’re not familiar with the systems. The C64 community is actually pretty alive and there are still people inventing new tricks that people never deemed possible on the C64. This is also where a big part of the fun of working with 8-bit machines comes from. Constantly pushing the boundaries of hardware that in itself does not, only this time with amazing speed thanks to the MEGA65.+The above is just a typical example of a first encounter with the system. The internet however is flooded with ideas and concepts behind the C65 and even more so C64 in case you’re not familiar with the systems. The C64 community is actually pretty alive and there are still people inventing new tricks that people never thought possible on the C64. This is also where a big part of the fun of working with 8-bit machines comes from. Constantly pushing the boundaries of hardware that in itself does not, only this time with amazing speed thanks to the MEGA65.
  
 Happy adventuring! Happy adventuring!
mega65_prerelease_starter_s_manual.txt · Last modified: 2016/06/18 21:56 by gurce