]> git.sur5r.net Git - cc65/blobdiff - include/accelerator.h
Added C128 in C64 mode accelerator code and documentation.
[cc65] / include / accelerator.h
index 7d1244233a5f1bc700481c36448cd8b94086d23a..0e3ba6e36391304edd8429be114e637062b805e3 100644 (file)
@@ -98,5 +98,82 @@ extern unsigned char detect_scpu (void);
  * 0x01  : SuperCPU cartridge present
  */
 
+
+/* C64DTV */
+
+extern unsigned char __fastcall__ set_c64dtv_speed (unsigned char speed);
+
+/* Set the speed of the C64DTV, using SPEED_SLOW will switch to
+ * slow mode, SPEED_2X or SPEED_FAST will switch to fast mode.
+ *
+ * Note that any value higher or equal to SPEED_2X will switch to fast mode.
+ *
+ * This function will return the actual speed the CPU is at after trying
+ * to set the requested speed, to my knowledge the switch should not fail.
+ *
+ * This function does not check for the presence of the C64DTV,
+ * make sure you use 'detect_c64dtv();' before using.
+ */
+
+extern unsigned char get_c64dtv_speed (void);
+
+/* Get the speed of the C64DTV.
+ *
+ * Possible return values:
+ * SPEED_1X    : slow mode
+ * SPEED_2X    : fast mode
+ *
+ * This function does not check for the presence of the C64DTV,
+ * make sure you use 'detect_c64dtv();' before using.
+ */
+
+extern unsigned char detect_c64dtv (void);
+
+/* Check for the presence of the C64DTV.
+ *
+ * Possible return values:
+ * 0x00  : C64DTV not present
+ * 0x01  : C64DTV present
+ */
+
+
+/* C128 in C64 mode */
+
+extern unsigned char __fastcall__ set_c128_speed (unsigned char speed);
+
+/* Set the speed of the C128 CPU, using SPEED_SLOW will switch to
+ * 1 Mhz (slow) mode, SPEED_2X or SPEED_FAST will switch to 2Mhz (fast) mode.
+ *
+ * Note that any value higher or equal to SPEED_2X will switch to fast mode.
+ *
+ * This function will return the actual speed the CPU is at after trying
+ * to set the requested speed, to my knowledge the switching should not fail.
+ *
+ * This function does not check for the presence of a C128 in C64 mode,
+ * make sure you use 'detect_c128();' before using.
+ */
+
+extern unsigned char get_c128_speed (void);
+
+/* Get the speed of the C128 CPU.
+ *
+ * Possible return values:
+ * SPEED_SLOW  : Slow mode
+ * SPEED_2X    : Fast mode
+ *
+ * This function does not check for the presence of a C128 in C64 mode,
+ * make sure you use 'detect_c128();' before using.
+ */
+
+extern unsigned char detect_c128 (void);
+
+/* Check for the presence of a C128 in C64 mode.
+ *
+ * Possible return values:
+ * 0x00  : C128 in C64 mode not present
+ * 0x01  : C128 in C64 mode present
+ */
+
 /* End of accelerator.h */
 #endif
+