diff --git a/README.txt b/README.txt deleted file mode 100644 index 0fd377f..0000000 --- a/README.txt +++ /dev/null @@ -1,55 +0,0 @@ - -Shoebill - a Macintosh II emulator that runs A/UX - -See the wiki on https://github.com/pruten/shoebill for better -documentation on building and running Shoebill. - -*** KEEP IN MIND *** - -* Shoebill v.0.0.2 - * ONLY RUNS A/UX -* Shoebill has broken, ultra-minimalist support for - * 68020 (CPU) + 68851 (MMU) + 68881 (FPU) - * Some instructions for ‘020 and most for the MMU and FPU are unimplemented - * SCSI, ADB, and VIA -* Shoebill does not support - * The floppy controller, IWM/SWIM - * Serial - * Ethernet - * PRAM - * Most other things - -*** RUNNING *** - -You will need -* OS X 10.8 or 10.9 -* A Macintosh II, IIx, or IIcx ROM -* A disk image with A/UX 1.x.x or 2.x.x, or 3.0.0 installed - * Note: 3.0.1 and 3.1.x do not work! - * If you happen to have an installation CD image for A/UX, that will work - - -To boot A/UX -* Backup your disk images!! - When Shoebill inevitably crashes, your A/UX boot image - will very likely be corrupted - sometimes so severely - that A/UX can’t even boot enough to run fsck. -* Open Shoebill.app and select Preferences menu item - * Set the paths for your ROM and disk image(s). - * Do use SCSI ID #0 for your A/UX boot image. - * Press “Apply and Run” -* Note: As of 0.0.2, you no longer need to provide your own kernel file - - -*** BUILDING *** - -1) cd to shoebill/ -2) make -3) The resulting app will be in gui/build - - - -*** ETC. *** -Props to Jared Falter for technical and emotional support! - - diff --git a/core/redblack.c b/core/redblack.c index 227ac19..89ac6d2 100644 --- a/core/redblack.c +++ b/core/redblack.c @@ -30,8 +30,9 @@ // Create a new red-black tree // (just return an empty black leaf pointer) -rb_tree* rb_new(alloc_pool_t *pool) +rb_tree* rb_new(alloc_pool_t *parent_pool) { + alloc_pool_t *pool = p_new_pool(parent_pool); rb_tree *tree = (rb_tree*)p_alloc(pool, sizeof(rb_tree)); tree->root = NULL; tree->pool = pool; @@ -255,21 +256,10 @@ uint32_t rb_count (rb_tree *tree) { return _rb_count(tree->root); } - -void _rb_free (rb_node *node) -{ - if (!node) return ; - _rb_free(node->right); - if (node->right) p_free(node->right); - _rb_free(node->left); - if (node->left) p_free(node->left); -} // Free all the nodes (and the rb_tree ptr itself) void rb_free (rb_tree *tree) { - _rb_free(tree->root); - p_free(tree->root); - p_free(tree); + p_free_pool(tree->pool); } diff --git a/gui/Shoebill.xcodeproj/project.pbxproj b/gui/Shoebill.xcodeproj/project.pbxproj index a649098..061a175 100644 --- a/gui/Shoebill.xcodeproj/project.pbxproj +++ b/gui/Shoebill.xcodeproj/project.pbxproj @@ -32,9 +32,9 @@ 87495444189980E200E80F5B /* shoeScreenView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = shoeScreenView.xib; sourceTree = ""; }; 8749544618999F5300E80F5B /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; 874954481899A22D00E80F5B /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = /System/Library/Frameworks/QuartzCore.framework; sourceTree = ""; }; - 8781D24918A19C340016F604 /* shoePreferencesWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shoePreferencesWindowController.h; sourceTree = ""; }; - 8781D24A18A19C340016F604 /* shoePreferencesWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = shoePreferencesWindowController.m; sourceTree = ""; }; - 8781D24B18A19C340016F604 /* shoePreferencesWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = shoePreferencesWindowController.xib; sourceTree = ""; }; + 8781D24918A19C340016F604 /* shoePreferencesWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = shoePreferencesWindowController.h; path = Shoebill/shoePreferencesWindowController.h; sourceTree = ""; }; + 8781D24A18A19C340016F604 /* shoePreferencesWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = shoePreferencesWindowController.m; path = Shoebill/shoePreferencesWindowController.m; sourceTree = ""; }; + 8781D24B18A19C340016F604 /* shoePreferencesWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = shoePreferencesWindowController.xib; path = Shoebill/shoePreferencesWindowController.xib; sourceTree = ""; }; 8782FCE2189AFEFB0081E19E /* shoeApplication.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shoeApplication.h; sourceTree = ""; }; 8782FCE3189AFEFB0081E19E /* shoeApplication.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = shoeApplication.m; sourceTree = ""; }; 87F9772818987700000D589E /* Shoebill.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Shoebill.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -134,10 +134,8 @@ 8782FCE3189AFEFB0081E19E /* shoeApplication.m */, 87F9773D18987700000D589E /* shoeAppDelegate.h */, 87F9773E18987700000D589E /* shoeAppDelegate.m */, - 8781D24B18A19C340016F604 /* shoePreferencesWindowController.xib */, - 8781D24918A19C340016F604 /* shoePreferencesWindowController.h */, - 8781D24A18A19C340016F604 /* shoePreferencesWindowController.m */, 870A2F9F192D2ADA00ABBC14 /* Screen */, + AE0D1AAB193132E700EBBED0 /* Preferences */, 87F9773218987700000D589E /* Supporting Files */, ); path = Shoebill; @@ -156,6 +154,17 @@ name = "Supporting Files"; sourceTree = ""; }; + AE0D1AAB193132E700EBBED0 /* Preferences */ = { + isa = PBXGroup; + children = ( + 8781D24B18A19C340016F604 /* shoePreferencesWindowController.xib */, + 8781D24918A19C340016F604 /* shoePreferencesWindowController.h */, + 8781D24A18A19C340016F604 /* shoePreferencesWindowController.m */, + ); + name = Preferences; + path = ..; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ diff --git a/gui/Shoebill/Shoebill-Info.plist b/gui/Shoebill/Shoebill-Info.plist index dedea78..7243666 100644 --- a/gui/Shoebill/Shoebill-Info.plist +++ b/gui/Shoebill/Shoebill-Info.plist @@ -2,7 +2,7 @@ - CFBundleGetInfoString + NSHumanReadableCopyright Copyright © 2013-2014 Peter Rutenbar CFBundleDevelopmentRegion en @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 0.0.2 + 0.0.3 CFBundleSignature ???? CFBundleVersion - 0.0.2 + 0.0.3 LSMinimumSystemVersion ${MACOSX_DEPLOYMENT_TARGET} NSMainNibFile diff --git a/gui/Shoebill/en.lproj/Credits.rtf b/gui/Shoebill/en.lproj/Credits.rtf index 3996956..2b4560e 100644 --- a/gui/Shoebill/en.lproj/Credits.rtf +++ b/gui/Shoebill/en.lproj/Credits.rtf @@ -1,13 +1,12 @@ -{\rtf1\ansi\ansicpg1252\cocoartf1265 +{\rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf200 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \vieww9600\viewh8400\viewkind0 -\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural +\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\qc \f0\b\fs24 \cf0 Shoebill \b0 \ A Macintosh II emulator that runs A/UX\ \ {\field{\*\fldinst{HYPERLINK "https://github.com/pruten/shoebill"}}{\fldrslt https://github.com/pruten/shoebill}}\ -\ -Peter Rutenbar (pruten@gmail.com)} \ No newline at end of file +} \ No newline at end of file