Frodo, C64 emulator.
This commit is contained in:
parent
fa7d4124d4
commit
0851e4c3a4
59
emulators/frodo/Makefile
Normal file
59
emulators/frodo/Makefile
Normal file
@ -0,0 +1,59 @@
|
||||
# $OpenBSD: Makefile,v 1.1.1.1 2000/07/07 14:29:51 espie Exp $
|
||||
|
||||
DISTNAME= FrodoV4_1a.Src
|
||||
PKGNAME= frodo-4.1a
|
||||
|
||||
CATEGORIES= emulators games
|
||||
|
||||
MAINTAINER= espie@openbsd.org
|
||||
|
||||
HOMEPAGE= http://www.uni-mainz.de/~bauec002/FRMain.html
|
||||
|
||||
# FreeWare
|
||||
PERMIT_PACKAGE_FTP= Yes
|
||||
PERMIT_PACKAGE_CDROM= Yes
|
||||
PERMIT_DISTFILES_FTP= Yes
|
||||
PERMIT_DISTFILES_CDROM= Yes
|
||||
|
||||
CONFIGURE_STYLE= gnu
|
||||
USE_X11= Yes
|
||||
|
||||
RUN_DEPENDS= ${WISH}::x11/tk/8.3
|
||||
|
||||
WISH=wish8.3
|
||||
FRODOLIBDIR=${PREFIX}/lib/frodo
|
||||
|
||||
CONFIGURE_ENV= CFLAGS='${CFLAGS} -O3 -D__unix -DX_USE_SHM -fno-exceptions'
|
||||
|
||||
|
||||
MAKE_ENV=WISH=${WISH} FRODOLIBDIR=${FRODOLIBDIR}
|
||||
|
||||
MASTER_SITES= http://iphcip1.physik.uni-mainz.de/~cbauer/ \
|
||||
ftp://sunsite.unc.edu/pub/micro/commodore/crossplatform/emulators/unix/
|
||||
|
||||
MASTER_SITES0= http://www.tu-harburg.de/~semk2104/dl/
|
||||
PATCHFILES= FrodoV4.1a-16bpp-patch.gz:0
|
||||
|
||||
WRKDIST=${WRKDIR}/Frodo
|
||||
WRKSRC=${WRKDIST}/Src
|
||||
|
||||
|
||||
do-install:
|
||||
${INSTALL_PROGRAM} ${WRKDIST}/Frodo ${PREFIX}/bin/frodo
|
||||
${INSTALL_PROGRAM} ${WRKDIST}/FrodoSC ${PREFIX}/bin/frodoSC
|
||||
${INSTALL_PROGRAM} ${WRKDIST}/FrodoPC ${PREFIX}/bin/frodoPC
|
||||
${INSTALL_DATA_DIR} ${FRODOLIBDIR}/64prgs
|
||||
${INSTALL_DATA} ${WRKDIST}/{1541,Basic,Char,Kernal}\ ROM \
|
||||
${FRODOLIBDIR}
|
||||
${INSTALL_DATA} "${WRKDIST}/Frodo Logo" ${FRODOLIBDIR}
|
||||
${INSTALL_SCRIPT} "${WRKDIST}/TkGui.tcl" ${FRODOLIBDIR}
|
||||
@cd ${WRKDIST}/64prgs; tar cf - . | \
|
||||
(cd ${FRODOLIBDIR}/64prgs; tar xf -)
|
||||
|
||||
post-install:
|
||||
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/frodo
|
||||
${INSTALL_DATA} ${WRKDIST}/CHANGES ${PREFIX}/share/doc/frodo
|
||||
cd ${WRKDIST}/Docs; tar cf - . | \
|
||||
(cd ${PREFIX}/share/doc/frodo; tar xf -)
|
||||
|
||||
.include <bsd.port.mk>
|
6
emulators/frodo/files/md5
Normal file
6
emulators/frodo/files/md5
Normal file
@ -0,0 +1,6 @@
|
||||
MD5 (FrodoV4.1a-16bpp-patch.gz) = a347f10d980dd70e5edc40033d46e6ee
|
||||
MD5 (FrodoV4_1a.Src.tar.gz) = 9a4b502f66275cb95c4f42631ca340fe
|
||||
RMD160 (FrodoV4.1a-16bpp-patch.gz) = 328c4b74898604d1e7aa0cf8a605a8bec067d37e
|
||||
RMD160 (FrodoV4_1a.Src.tar.gz) = 81a3d0b1d23caa0d7291a7acfdd8bc72984f218a
|
||||
SHA1 (FrodoV4.1a-16bpp-patch.gz) = d84e67fd7c23ab3d1ea88d63a9e9a728b6b13aaa
|
||||
SHA1 (FrodoV4_1a.Src.tar.gz) = 0b35e17ec2827ef56224b5aa6a06d833f529e372
|
21
emulators/frodo/patches/patch-Src_C64_x_i
Normal file
21
emulators/frodo/patches/patch-Src_C64_x_i
Normal file
@ -0,0 +1,21 @@
|
||||
$OpenBSD: patch-Src_C64_x_i,v 1.1.1.1 2000/07/07 14:29:51 espie Exp $
|
||||
--- Src/C64_x.i.orig Wed Aug 6 20:56:25 1997
|
||||
+++ Src/C64_x.i Thu Jul 6 18:52:43 2000
|
||||
@@ -100,7 +100,16 @@ void C64::c64_ctor1(void)
|
||||
gui = 0;
|
||||
#else
|
||||
// try to start up Tk gui.
|
||||
- gui = new CmdPipe("wish", "TkGui.tcl");
|
||||
+ char *wishName = getenv("WISH");
|
||||
+ if (wishName == NULL)
|
||||
+ wishName = WISH;
|
||||
+ char *d = getenv("FRODOLIBDIR");
|
||||
+ if (d == NULL)
|
||||
+ d = FRODOLIBDIR;
|
||||
+ char buffer[1024];
|
||||
+ snprintf(buffer, sizeof(buffer), "%s/%s", d, "TkGui.tcl");
|
||||
+
|
||||
+ gui = new CmdPipe(wishName, buffer);
|
||||
if (gui) {
|
||||
if (gui->fail) {
|
||||
delete gui; gui = 0;
|
13
emulators/frodo/patches/patch-Src_Makefile_in
Normal file
13
emulators/frodo/patches/patch-Src_Makefile_in
Normal file
@ -0,0 +1,13 @@
|
||||
$OpenBSD: patch-Src_Makefile_in,v 1.1.1.1 2000/07/07 14:29:51 espie Exp $
|
||||
--- Src/Makefile.in.orig Wed Aug 6 20:56:29 1997
|
||||
+++ Src/Makefile.in Fri Jul 7 16:01:13 2000
|
||||
@@ -9,7 +9,8 @@ REVISION = 1
|
||||
CXX = @CXX@
|
||||
CPP = @CPP@
|
||||
LIBRARIES = @LIBRARIES@ @LIBS@
|
||||
-CFLAGS = @CFLAGS@ @X_CFLAGS@ -I./ -DBROKEN_JOYSTICK_H=@BROKEN_JOYSTICK_H@ -DFRODO_HPUX_REV=@HPUX_REV@ -DKBD_LANG=@KBD_LANG@
|
||||
+CFLAGS = @CFLAGS@ @X_CFLAGS@ -I./ -DBROKEN_JOYSTICK_H=@BROKEN_JOYSTICK_H@ -DFRODO_HPUX_REV=@HPUX_REV@ -DKBD_LANG=@KBD_LANG@ \
|
||||
+ -DWISH=\"${WISH}\" -DFRODOLIBDIR=\"${FRODOLIBDIR}\"
|
||||
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
12
emulators/frodo/patches/patch-Src_configure
Normal file
12
emulators/frodo/patches/patch-Src_configure
Normal file
@ -0,0 +1,12 @@
|
||||
$OpenBSD: patch-Src_configure,v 1.1.1.1 2000/07/07 14:29:51 espie Exp $
|
||||
--- Src/configure.orig Wed Jul 5 14:45:45 2000
|
||||
+++ Src/configure Wed Jul 5 14:46:20 2000
|
||||
@@ -917,7 +917,7 @@ fi
|
||||
|
||||
|
||||
if [ x"$GXX" = "xyes" ]; then
|
||||
- CFLAGS="-O3 -g -fomit-frame-pointer -Wall -Wno-unused -Wno-format -W -Wmissing-prototypes -Wstrict-prototypes"
|
||||
+ CFLAGS="${CFLAGS} -Wall -Wno-unused -Wno-format -W -Wmissing-prototypes -Wstrict-prototypes"
|
||||
fi
|
||||
|
||||
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
|
41
emulators/frodo/patches/patch-Src_main_cpp
Normal file
41
emulators/frodo/patches/patch-Src_main_cpp
Normal file
@ -0,0 +1,41 @@
|
||||
$OpenBSD: patch-Src_main_cpp,v 1.1.1.1 2000/07/07 14:29:51 espie Exp $
|
||||
--- Src/main.cpp.orig Wed Aug 6 20:56:31 1997
|
||||
+++ Src/main.cpp Thu Jul 6 19:07:47 2000
|
||||
@@ -36,7 +36,7 @@ char AppDirPath[1024]; // Path of applic
|
||||
*/
|
||||
|
||||
#ifndef __PSXOS__
|
||||
-bool Frodo::load_rom_files(void)
|
||||
+bool Frodo::do_load_rom_files(void)
|
||||
{
|
||||
FILE *file;
|
||||
|
||||
@@ -89,6 +89,28 @@ bool Frodo::load_rom_files(void)
|
||||
}
|
||||
|
||||
return true;
|
||||
+}
|
||||
+
|
||||
+bool Frodo::load_rom_files(void)
|
||||
+{
|
||||
+ int fd = open(".", O_RDONLY);
|
||||
+
|
||||
+ if (fd == -1) {
|
||||
+ ShowRequester("Can't lock current directory", "Quit");
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ char *d = getenv("FRODOLIBDIR");
|
||||
+ if (d == NULL)
|
||||
+ d = FRODOLIBDIR;
|
||||
+ if (chdir(d) != 0) {
|
||||
+ ShowRequester("Can't access Frodo Lib Directory", "Quit");
|
||||
+ return false;
|
||||
+ }
|
||||
+ bool result = do_load_rom_files();
|
||||
+ fchdir(fd);
|
||||
+ close(fd);
|
||||
+ return result;
|
||||
}
|
||||
#endif
|
||||
|
11
emulators/frodo/patches/patch-Src_main_h
Normal file
11
emulators/frodo/patches/patch-Src_main_h
Normal file
@ -0,0 +1,11 @@
|
||||
$OpenBSD: patch-Src_main_h,v 1.1.1.1 2000/07/07 14:29:51 espie Exp $
|
||||
--- Src/main.h.orig Wed Aug 6 20:56:31 1997
|
||||
+++ Src/main.h Thu Jul 6 19:09:54 2000
|
||||
@@ -119,6 +119,7 @@ public:
|
||||
|
||||
private:
|
||||
bool load_rom_files(void);
|
||||
+ bool do_load_rom_files(void);
|
||||
|
||||
static char prefs_path[256]; // Pathname of current preferences file
|
||||
};
|
13
emulators/frodo/patches/patch-Src_sysdeps_h
Normal file
13
emulators/frodo/patches/patch-Src_sysdeps_h
Normal file
@ -0,0 +1,13 @@
|
||||
$OpenBSD: patch-Src_sysdeps_h,v 1.1.1.1 2000/07/07 14:29:51 espie Exp $
|
||||
--- Src/sysdeps.h.orig Wed Jul 5 14:12:02 2000
|
||||
+++ Src/sysdeps.h Wed Jul 5 14:12:33 2000
|
||||
@@ -63,7 +63,9 @@ extern "C"
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_MOUNT_H
|
||||
+#define export exp
|
||||
#include <sys/mount.h>
|
||||
+#undef export
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_STATFS_H
|
51
emulators/frodo/patches/patch-TkGui_tcl
Normal file
51
emulators/frodo/patches/patch-TkGui_tcl
Normal file
@ -0,0 +1,51 @@
|
||||
$OpenBSD: patch-TkGui_tcl,v 1.1.1.1 2000/07/07 14:29:51 espie Exp $
|
||||
--- TkGui.tcl.orig Wed Aug 6 20:56:34 1997
|
||||
+++ TkGui.tcl Fri Jul 7 16:11:41 2000
|
||||
@@ -1,9 +1,9 @@
|
||||
-#!/usr/local/bin/X11/wish
|
||||
+#!/usr/local/bin/wish8.3
|
||||
|
||||
# Frodo Tk GUI by Lutz Vieweg <lkv@mania.robin.de>
|
||||
# requires Tk >= 4.1
|
||||
|
||||
-package require Tk 4.1
|
||||
+#package require Tk 4.1
|
||||
|
||||
set prefname "$env(HOME)/.frodorc"
|
||||
|
||||
@@ -476,7 +476,7 @@ pack .drives.d8.dir -side left -expand f
|
||||
|
||||
radiobutton .drives.d8.t64 -text "T64" -variable pref(DriveType8) -value "T64" \
|
||||
-command {
|
||||
- set erg [fs_FileSelect .fs 0 "Choose T64/LYNX archive file" "*.(t64|lnx)" $pref(DrivePath8)]
|
||||
+ set erg [fs_FileSelect .fs 0 "Choose T64/LYNX archive file" "*.{t64,lnx}" $pref(DrivePath8)]
|
||||
if {$erg != ""} { set pref(DrivePath8) $erg ; Change }
|
||||
}
|
||||
pack .drives.d8.t64 -side left -expand false
|
||||
@@ -509,7 +509,7 @@ pack .drives.d9.dir -side left -expand f
|
||||
|
||||
radiobutton .drives.d9.t64 -text "T64" -variable pref(DriveType9) -value "T64" \
|
||||
-command {
|
||||
- set erg [fs_FileSelect .fs 0 "Choose T64/LYNX archive file" "*.(t64|lnx)" $pref(DrivePath9)]
|
||||
+ set erg [fs_FileSelect .fs 0 "Choose T64/LYNX archive file" "*.{t64,lnx}" $pref(DrivePath9)]
|
||||
if {$erg != ""} { set pref(DrivePath9) $erg ; Change }
|
||||
}
|
||||
pack .drives.d9.t64 -side left -expand false
|
||||
@@ -543,7 +543,7 @@ pack .drives.d10.dir -side left -expand
|
||||
|
||||
radiobutton .drives.d10.t64 -text "T64" -variable pref(DriveType10) -value "T64" \
|
||||
-command {
|
||||
- set erg [fs_FileSelect .fs 0 "Choose T64/LYNX archive file" "*.(t64|lnx)" $pref(DrivePath10)]
|
||||
+ set erg [fs_FileSelect .fs 0 "Choose T64/LYNX archive file" "*.{t64,lnx}" $pref(DrivePath10)]
|
||||
if {$erg != ""} { set pref(DrivePath10) $erg ; Change }
|
||||
}
|
||||
pack .drives.d10.t64 -side left -expand false
|
||||
@@ -577,7 +577,7 @@ pack .drives.d11.dir -side left -expand
|
||||
|
||||
radiobutton .drives.d11.t64 -text "T64" -variable pref(DriveType11) -value "T64" \
|
||||
-command {
|
||||
- set erg [fs_FileSelect .fs 0 "Choose T64/LYNX archive file" "*.(t64|lnx)" $pref(DrivePath11)]
|
||||
+ set erg [fs_FileSelect .fs 0 "Choose T64/LYNX archive file" "*.{t64,lnx}" $pref(DrivePath11)]
|
||||
if {$erg != ""} { set pref(DrivePath11) $erg ; Change }
|
||||
}
|
||||
pack .drives.d11.t64 -side left -expand false
|
1
emulators/frodo/pkg/COMMENT
Normal file
1
emulators/frodo/pkg/COMMENT
Normal file
@ -0,0 +1 @@
|
||||
Commodore 64 emulator
|
28
emulators/frodo/pkg/DESCR
Normal file
28
emulators/frodo/pkg/DESCR
Normal file
@ -0,0 +1,28 @@
|
||||
Frodo is a freeware C64 emulator for BeOS, Unix, MacOS, AmigaOS, Win32
|
||||
and RiscOS systems and the world's first C64 emulator not bearing a
|
||||
"64" in its name. :-) (No, it has absolutely nothing to do with
|
||||
frodo.hiof.no, that's a pure coincidence.)
|
||||
|
||||
Frodo was developed to reproduce the graphics of games and demos
|
||||
better than the existing C64 emulators. Therefore Frodo has relatively
|
||||
high system requirements: It should only be run on systems with at
|
||||
least a PowerPC/Pentium/68060. But on the other hand, Frodo can
|
||||
display raster effects correctly that only result in a flickering mess
|
||||
with other emulators.
|
||||
|
||||
Frodo comes in three flavours: The "normal" Frodo with a line-based
|
||||
emulation, the improved line-based emulation "Frodo PC", and the
|
||||
single-cycle emulation Frodo SC that is slower but far more
|
||||
compatible.
|
||||
|
||||
In addition to a precise 6510/VIC emulation, Frodo features a
|
||||
processor-level 1541 emulation that is even able to handle about 95%
|
||||
of all fast loaders. There is also a faster 1541 emulation for four
|
||||
drives in .d64/x64 disk images, .t64/LYNX archives, or directories of
|
||||
the host system.
|
||||
|
||||
|
||||
The current OpenBSD port does not support sound yet (there is a bug in
|
||||
Frodo's code), nor a joystick.
|
||||
|
||||
See ${HOMEPAGE} for details.
|
46
emulators/frodo/pkg/PLIST
Normal file
46
emulators/frodo/pkg/PLIST
Normal file
@ -0,0 +1,46 @@
|
||||
@comment $OpenBSD: PLIST,v 1.1.1.1 2000/07/07 14:29:52 espie Exp $
|
||||
bin/frodo
|
||||
bin/frodoSC
|
||||
bin/frodoPC
|
||||
lib/frodo/1541 ROM
|
||||
lib/frodo/64prgs/3fff
|
||||
lib/frodo/64prgs/colorbars
|
||||
lib/frodo/64prgs/d011h3
|
||||
lib/frodo/64prgs/dadb
|
||||
lib/frodo/64prgs/de00all
|
||||
lib/frodo/64prgs/dycp
|
||||
lib/frodo/64prgs/fld
|
||||
lib/frodo/64prgs/lrborder
|
||||
lib/frodo/64prgs/sprsync
|
||||
lib/frodo/64prgs/stretch
|
||||
lib/frodo/64prgs/tech-tech
|
||||
lib/frodo/64prgs/text26
|
||||
lib/frodo/Basic ROM
|
||||
lib/frodo/Char ROM
|
||||
lib/frodo/Frodo Logo
|
||||
lib/frodo/Kernal ROM
|
||||
lib/frodo/TkGui.tcl
|
||||
share/doc/frodo/CHANGES
|
||||
share/doc/frodo/Main.html
|
||||
share/doc/frodo/author.html
|
||||
share/doc/frodo/bugreports.html
|
||||
share/doc/frodo/demoprograms.html
|
||||
share/doc/frodo/emulwindow.html
|
||||
share/doc/frodo/files.html
|
||||
share/doc/frodo/flavours.html
|
||||
share/doc/frodo/future.html
|
||||
share/doc/frodo/history.html
|
||||
share/doc/frodo/installation.html
|
||||
share/doc/frodo/kernal.html
|
||||
share/doc/frodo/keyboard.html
|
||||
share/doc/frodo/legalmush.html
|
||||
share/doc/frodo/overview.html
|
||||
share/doc/frodo/sam.html
|
||||
share/doc/frodo/settings.html
|
||||
share/doc/frodo/systemspecific.html
|
||||
share/doc/frodo/technicalinfo.html
|
||||
share/doc/frodo/thanks.html
|
||||
share/doc/frodo/whatsnew.html
|
||||
@dirrm share/doc/frodo
|
||||
@dirrm lib/frodo/64prgs
|
||||
@dirrm lib/frodo
|
Loading…
Reference in New Issue
Block a user