Shoebill is an all-new, BSD-licensed Macintosh II emulator designed
from the ground up with the singular goal of running A/UX.
This commit is contained in:
parent
4449e9e486
commit
a84d8bb22c
8 changed files with 147 additions and 1 deletions
|
@ -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
|
||||
|
|
21
emulators/shoebill/DESCR
Normal file
21
emulators/shoebill/DESCR
Normal file
|
@ -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.
|
36
emulators/shoebill/Makefile
Normal file
36
emulators/shoebill/Makefile
Normal file
|
@ -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"
|
4
emulators/shoebill/PLIST
Normal file
4
emulators/shoebill/PLIST
Normal file
|
@ -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
|
8
emulators/shoebill/distinfo
Normal file
8
emulators/shoebill/distinfo
Normal file
|
@ -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
|
37
emulators/shoebill/files/shoebill.usage
Normal file
37
emulators/shoebill/files/shoebill.usage
Normal file
|
@ -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
|
24
emulators/shoebill/patches/patch-sdl-gui_lin_build.sh
Normal file
24
emulators/shoebill/patches/patch-sdl-gui_lin_build.sh
Normal file
|
@ -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
|
15
emulators/shoebill/patches/patch-sdl-gui_sdl.c
Normal file
15
emulators/shoebill/patches/patch-sdl-gui_sdl.c
Normal file
|
@ -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)
|
Loading…
Reference in a new issue