From b6db1d5a847c1e0ed2b8d83121fcfec973e2dd23 Mon Sep 17 00:00:00 2001 From: cuz Date: Mon, 11 Oct 2004 07:19:13 +0000 Subject: [PATCH] Added lynx_change_framerate() git-svn-id: svn://svn.cc65.org/cc65/trunk@3240 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- libsrc/lynx/Makefile | 5 +++-- libsrc/lynx/framerate.s | 46 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 libsrc/lynx/framerate.s diff --git a/libsrc/lynx/Makefile b/libsrc/lynx/Makefile index c39c75b2c..d974d2916 100644 --- a/libsrc/lynx/Makefile +++ b/libsrc/lynx/Makefile @@ -33,7 +33,8 @@ #-------------------------------------------------------------------------- # Object files -OBJS = crt0.o +OBJS = crt0.o \ + framerate.o #-------------------------------------------------------------------------- # Drivers @@ -46,7 +47,7 @@ MOUS = SERS = -TGIS = +TGIS = #-------------------------------------------------------------------------- # Targets diff --git a/libsrc/lynx/framerate.s b/libsrc/lynx/framerate.s new file mode 100644 index 000000000..89a5de53d --- /dev/null +++ b/libsrc/lynx/framerate.s @@ -0,0 +1,46 @@ +; *** +; CC65 Lynx Library +; +; Originally by Bastian Schick, BLL kit mikey.mac +; http://www.geocities.com/SiliconValley/Byte/4242/lynx/ +; +; Ported to cc65 (http://www.cc65.org) by +; Shawn Jefferson, June 2004 +; +; Ullrich von Bassewitz, 2004-10-09, small changes. +; +; void __fastcall__ lynx_change_framerate (unsigned char rate); +; /* Change the framerate, in Hz. Recognized values are 50, 60 and 75. */ +; + + .include "lynx.inc" + .export _lynx_change_framerate + + .code + + +_lynx_change_framerate: + cmp #75 + beq set_75 + cmp #60 + beq set_60 + cmp #50 + bne exit + +set_50: lda #$bd + ldx #$31 + bra doit + +set_60: lda #$9e + ldx #$29 + bra doit + +set_75: lda #$7e + ldx #$20 + +doit: sta HTIMBKUP + stx PBKUP + +exit: rts + + -- 2.39.5