From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 7.2 \(1874\)) From: Jeff Sickel In-Reply-To: <83edb3fab7bc44bbfc99cea15e5d6d4e@brasstown.quanstro.net> Date: Sat, 10 May 2014 16:24:43 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <7FE9B946-A7E4-4E1C-AEE9-7B3998D69B68@corpus-callosum.com> References: <45075B12-7640-4501-9946-F7E6C12C3A08@ar.aichi-u.ac.jp> <0084adb689c8276376abcb7aea94cc3e@brasstown.quanstro.net> <0B2F5B13-FF42-41C3-B141-350AADEFA5FA@ar.aichi-u.ac.jp> <83edb3fab7bc44bbfc99cea15e5d6d4e@brasstown.quanstro.net> To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Subject: Re: [9fans] vx32 compilation for osx Topicbox-Message-UUID: e55f9008-ead8-11e9-9d60-3106f5b1d025 The issue on the OS X version is that Apple announced, 5 years or more = ago, that the 32-bit Carbon APIs were end of life and being decommissioned. 9vx uses those Carbon graphics APIs, so it stands to reason that when Apple released Mavericks, those APIs were no longer supported or = included with the system. There are three options: 1) implement draterm-cocoa drawing techniques 2) implement p9p=92s devdraw interface and use devdraw-cocoa 3) utilize the inferno drawing variant with the diff % hg diff emu mkfiles diff -r d8a878d9e6a1 emu/MacOSX/win.c --- a/emu/MacOSX/win.c Thu May 01 12:08:59 2014 +0100 +++ b/emu/MacOSX/win.c Sat May 10 16:22:46 2014 -0500 @@ -573,10 +573,12 @@ QDBeginCGContext(GetWindowPort(theWindow), &context); =09 // The sub-image is relative to our whole screen image. - CGImageRef subimg =3D = CGImageCreateWithImageInRect(fullScreenImage, rbounds); + CGImageRef subimg =3D CGRectEqualToRect(rbounds, bounds) ? + CGImageCreateCopy(fullScreenImage): + CGImageCreateWithImageInRect(fullScreenImage, rbounds); =09 // Drawing the sub-image is relative to the window. - rbounds.origin.y =3D winRect.bottom - winRect.top - r.min.y - = rbounds.size.height; + rbounds.origin.y =3D winRect.bottom - winRect.top - = rbounds.origin.y - rbounds.size.height; CGContextDrawImage(context, rbounds, subimg); CGImageRelease(subimg); QDEndCGContext(GetWindowPort(theWindow), &context); diff -r d8a878d9e6a1 mkfiles/mkfile-MacOSX-386 --- a/mkfiles/mkfile-MacOSX-386 Thu May 01 12:08:59 2014 +0100 +++ b/mkfiles/mkfile-MacOSX-386 Sat May 10 16:22:46 2014 -0500 @@ -24,7 +24,6 @@ -pipe\ -fno-strict-aliasing\ -no-cpp-precomp\ - -mno-fused-madd\ -I$ROOT/MacOSX/386/include\ -I$ROOT/include\ $COPTFLAGS $CDEBUGFLAGS\ On May 10, 2014, at 9:20 AM, erik quanstrom = wrote: > On Sat May 10 10:04:09 EDT 2014, aram.h@mgk.ro wrote: >> It's easy to make it use clang directly (instead of gcc wrapper) and >> compile it in 32-bit mode, the larger issue is that it uses an >> obsolete devdraw implementation that doesn't compile in Mavericks any >> more... >=20 > are you sure that there are (full) 32-bit apis for cocoa? the even = larger > issue is that 9vx may be completely unsupportable with mavricks. > help me old by 10 8 krufted executable, you're my only hope. >=20 > - erik >=20