diff options
author | hauke <hauke@pkgsrc.org> | 2016-03-23 14:21:03 +0000 |
---|---|---|
committer | hauke <hauke@pkgsrc.org> | 2016-03-23 14:21:03 +0000 |
commit | aacdfc479c2937f288f9bd2894637920bc45cf09 (patch) | |
tree | 33a82d3f58e555265e73af62379347bedce9d960 /emulators | |
parent | 8448ff91685db51e9088208a260173b6c85fc0d0 (diff) | |
download | pkgsrc-aacdfc479c2937f288f9bd2894637920bc45cf09.tar.gz |
Shoebill is an all-new, BSD-licensed Macintosh II emulator designed
from the ground up with the singular goal of running A/UX.
Diffstat (limited to 'emulators')
-rw-r--r-- | emulators/Makefile | 3 | ||||
-rw-r--r-- | emulators/shoebill/DESCR | 21 | ||||
-rw-r--r-- | emulators/shoebill/Makefile | 36 | ||||
-rw-r--r-- | emulators/shoebill/PLIST | 4 | ||||
-rw-r--r-- | emulators/shoebill/distinfo | 8 | ||||
-rw-r--r-- | emulators/shoebill/files/shoebill.usage | 37 | ||||
-rw-r--r-- | emulators/shoebill/patches/patch-sdl-gui_lin_build.sh | 24 | ||||
-rw-r--r-- | emulators/shoebill/patches/patch-sdl-gui_sdl.c | 15 |
8 files changed, 147 insertions, 1 deletions
diff --git a/emulators/Makefile b/emulators/Makefile index 73340abbfc9..8e41656e610 100644 --- a/emulators/Makefile +++ b/emulators/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.242 2016/01/17 20:47:34 wiz Exp $ +# $NetBSD: Makefile,v 1.243 2016/03/23 14:22:14 hauke Exp $ # COMMENT= Emulators for other operating systems @@ -128,6 +128,7 @@ SUBDIR+= qemu0 SUBDIR+= raine SUBDIR+= realboy SUBDIR+= retroarch +SUBDIR+= shoestring SUBDIR+= simh SUBDIR+= simulavr SUBDIR+= ski diff --git a/emulators/shoebill/DESCR b/emulators/shoebill/DESCR new file mode 100644 index 00000000000..dbe61507556 --- /dev/null +++ b/emulators/shoebill/DESCR @@ -0,0 +1,21 @@ +Shoebill is an all-new, BSD-licensed Macintosh II emulator designed +from the ground up with the singular goal of running A/UX, first +presented on +<http://www.emaculation.com/forum/viewtopic.php?f=7&t=8288>. + +Shoebill requires a Macintosh II, IIx or IIcx ROM, e.g. from +<https://github.com/macmade/Macintosh-ROMs>, and a disk image with +A/UX installed. + +Shoebill is different from other Macintosh emulators in how it +boots. Instead of booting directly into the Macintosh ROM, Shoebill +implements a bootloader and boots directly into A/UX +itself. Traditionally, A/UX is booted by first booting Mac OS, and +then running SASH/launch to mount the A/UX root partition, run fsck if +necessary, load the unix kernel, and then boot it. SASH provides the +ability to manipulate the A/UX filesystem while actually running in +regular Mac OS. + +Shoebill cannot boot into regular Mac OS, although that's a future +goal. Instead, it replicates the functionality of Apple's bootloader, +and boots directly into A/UX. diff --git a/emulators/shoebill/Makefile b/emulators/shoebill/Makefile new file mode 100644 index 00000000000..96304e9e6cd --- /dev/null +++ b/emulators/shoebill/Makefile @@ -0,0 +1,36 @@ +# $NetBSD: Makefile,v 1.1 2016/03/23 14:21:03 hauke Exp $ + +GITHUB_PROJECT= shoebill +DISTNAME= 0.0.5 +PKGNAME= ${GITHUB_PROJECT}-${DISTNAME} +CATEGORIES= emulators +MASTER_SITES= ${MASTER_SITE_GITHUB:=pruten/} +DIST_SUBDIR= ${GITHUB_PROJECT} + +MAINTAINER= hauke@NetBSD.org +HOMEPAGE= ${MASTER_SITE_GITHUB:=pruten/shoebill/} +COMMENT= Macintosh II emulator that runs A/UX +LICENSE= 2-clause-bsd + +# Missing long double math functions +NOT_FOR_PLATFORM= NetBSD-[0-6]*-* + +USE_TOOLS+= perl + +WRKSRC= ${WRKDIR}/${PKGNAME} + +DOCDIR= share/doc/shoebill +INSTALLATION_DIRS= bin ${DOCDIR} + +do-build: + ( cd ${WRKSRC}/sdl-gui && \ + ${ENV} CC=${CC:Q} CFLAGS=${CFLAGS:Q} LDFLAGS=${LDFLAGS:Q} \ + ${SH} ./lin_build.sh ) + +do-install: + ${INSTALL_DATA} files/shoebill.usage ${DESTDIR}${PREFIX}/${DOCDIR} + ${INSTALL_DATA} ${WRKSRC}/README.md ${DESTDIR}${PREFIX}/${DOCDIR} + ${INSTALL_PROGRAM} ${WRKSRC}/sdl-gui/shoebill ${DESTDIR}${PREFIX}/bin + +.include "../../devel/SDL2/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/emulators/shoebill/PLIST b/emulators/shoebill/PLIST new file mode 100644 index 00000000000..21b91a533dd --- /dev/null +++ b/emulators/shoebill/PLIST @@ -0,0 +1,4 @@ +@comment $NetBSD: PLIST,v 1.1 2016/03/23 14:21:03 hauke Exp $ +bin/shoebill +share/doc/shoebill/README.md +share/doc/shoebill/shoebill.usage diff --git a/emulators/shoebill/distinfo b/emulators/shoebill/distinfo new file mode 100644 index 00000000000..7eca73e71bc --- /dev/null +++ b/emulators/shoebill/distinfo @@ -0,0 +1,8 @@ +$NetBSD: distinfo,v 1.1 2016/03/23 14:21:03 hauke Exp $ + +SHA1 (shoebill/0.0.5.tar.gz) = 40b9ae839bbb9d065ca7d36363b1b4660d780010 +RMD160 (shoebill/0.0.5.tar.gz) = 20143081d2418d6961f86626e3d994b2feda8a4b +SHA512 (shoebill/0.0.5.tar.gz) = cf8d7945943d6d7a505c233b5c99371f5d37d5d60dd5beeeadbe442ef43b9980e96d51f193d69a03eb58a0a2b13103b4dba311a53c939b633b20753a8c19a772 +Size (shoebill/0.0.5.tar.gz) = 253877 bytes +SHA1 (patch-sdl-gui_lin_build.sh) = 024efbe3dbec708148bc205c01cddff4fd6d74e1 +SHA1 (patch-sdl-gui_sdl.c) = ee433b37104dcccc700d1d08b97807689ed8da67 diff --git a/emulators/shoebill/files/shoebill.usage b/emulators/shoebill/files/shoebill.usage new file mode 100644 index 00000000000..b692b875f87 --- /dev/null +++ b/emulators/shoebill/files/shoebill.usage @@ -0,0 +1,37 @@ +Shoebill v0.0.4 - http://github.com/pruten/shoebill - Peter Rutenbar (c) 2014 + +Arguments have the form name=value. + +rom=<path to Mac II ROM> +Specifies the path to a Macintosh II ROM. +E.g. rom=/home/foo/macii.rom + +disk0..disk6=<path to disk image> + +Specifies the path to a disk image for the given SCSI ID. Shoebill +will always boot from disk0, so make sure disk0 points to a bootable +A/UX image. E.g. disk0=/home/foo/aux3.img disk1=/blah.img + +ram=<megabytes of memory> +E.g. ram=16 + +height=<num pixels> +Specifies the height of the screen in pixels. + +width=<num pixels> +Specifies the width of the screen in pixels. + +pram-path=<path to PRAM file> +Defaults to ~/.shoebill_pram + +verbose=<1 or 0> +Whether to boot A/UX in verbose mode. Best to leave it at default (1). + +unix-path=<path to kernel on disk0> +Path to the kernel file on the root disk image. Best to leave it at +default (/unix). + + +Example: + +./shoebill disk0=/aux3.img rom=/macii.rom width=1024 height=768 ram=64 diff --git a/emulators/shoebill/patches/patch-sdl-gui_lin_build.sh b/emulators/shoebill/patches/patch-sdl-gui_lin_build.sh new file mode 100644 index 00000000000..085e18df4ae --- /dev/null +++ b/emulators/shoebill/patches/patch-sdl-gui_lin_build.sh @@ -0,0 +1,24 @@ +$NetBSD: patch-sdl-gui_lin_build.sh,v 1.1 2016/03/23 14:21:03 hauke Exp $ + +Make build parameters settable from pkg Makefile + +--- sdl-gui/lin_build.sh.orig 2015-09-14 02:11:18.000000000 +0000 ++++ sdl-gui/lin_build.sh +@@ -1,6 +1,7 @@ +-#!/bin/bash ++#!/bin/sh + +-CC=gcc ++CC=${CC:-"gcc"} ++CFLAGS=${CFLAGS:-"-O2"} + + files="" + for i in adb fpu mc68851 mem via floppy core_api cpu dis; do +@@ -17,6 +18,6 @@ $CC -O1 ../core/decoder_gen.c -o decoder + ./decoder_gen dis . + + +-cmd="$CC -O3 -ggdb -flto $files sdl.c -lpthread -lm -lSDL2 -lGL -o shoebill" ++cmd="$CC ${CFLAGS} -ggdb -flto $files sdl.c -lpthread -lm -lSDL2 -lGL ${LDFLAGS} -o shoebill" + echo $cmd + $cmd diff --git a/emulators/shoebill/patches/patch-sdl-gui_sdl.c b/emulators/shoebill/patches/patch-sdl-gui_sdl.c new file mode 100644 index 00000000000..f4f77fc736f --- /dev/null +++ b/emulators/shoebill/patches/patch-sdl-gui_sdl.c @@ -0,0 +1,15 @@ +$NetBSD: patch-sdl-gui_sdl.c,v 1.1 2016/03/23 14:21:03 hauke Exp $ + +Fix #include path + +--- sdl-gui/sdl.c.orig 2015-09-14 02:11:18.000000000 +0000 ++++ sdl-gui/sdl.c +@@ -220,7 +220,7 @@ struct { + #if !((defined WIN32) || (defined _WIN64)) + #include <sys/types.h> + #include <pwd.h> +-#include <uuid/uuid.h> ++#include <uuid.h> + #endif + + static char* _get_home_dir (const char *terminal_element) |