void toggle_videomode (void);
/* Toggle the video mode between 40 and 80 chars (calls SWAPPER) */
+void c64mode (void);
+/* Switch the C128 into C64 mode. Note: This function will not return! */
+
+void fast (void);
+/* Switch the CPU into 2MHz mode. Note: This will disable video when in
+ * 40 column mode.
+ */
+
+void slow (void);
+/* Switch the CPU into 1MHz mode. */
+
/* End of c128.h */
OBJS = _scrsize.o \
break.o \
+ c64mode.o \
cgetc.o \
clrscr.o \
conio.o \
crt0.o \
color.o \
cputc.o \
+ fast.o \
get_tv.o \
joy_stddrv.o \
kbhit.o \
randomize.o \
revers.o \
rs232.o \
+ slow.o \
tgi_mode_table.o \
toggle_videomode.o
NEWLINE = $C363
PRINT = $C322
-; Extended jump table
+; Extended jump table
+C64MODE = $FF4D
SWAPPER = $FF5F
SETBNK = $FF68
--- /dev/null
+;
+; Ullrich von Bassewitz, 2003-02-13
+;
+; void c64mode (void);
+; /* Switch the C128 into C64 mode. Note: This function will not return! */
+;
+
+ .export _c64mode
+
+ .include "c128.inc"
+
+ _c64mode = C64MODE
+
--- /dev/null
+;
+; Ullrich von Bassewitz, 2003-02-13
+;
+; void fast (void);
+; /* Switch the CPU into 2MHz mode. Note: This will disable video when in
+; * 40 column mode.
+; */
+;
+
+ .export _fast
+
+ .include "c128.inc"
+
+
+.proc _fast
+
+ lda #$01
+ sta VIC_CLK_128
+ rts
+
+.endproc
+
+
--- /dev/null
+;
+; Ullrich von Bassewitz, 2003-02-13
+;
+; void slow (void);
+; /* Switch the CPU into 1MHz mode. */
+; */
+;
+
+ .export _slow
+
+ .include "c128.inc"
+
+
+.proc _slow
+
+ lda #$00
+ sta VIC_CLK_128
+ rts
+
+.endproc
+
+