Login  •  Register


The time is now: Wed Jun 19, 2013 2:57 pm

Emaculation wiki  •  Delete all board cookies



Post new topic  Reply to topic Page 1 of 1 [ 22 posts ]
Print view Previous topic  |  Next topic
Author Message
PostPosted: Sat Nov 26, 2011 3:14 am 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
Hi All

I've started a project to get the iPhone port of Mini vMac upgraded to 3.2.3, with the ultimate aim of having Mac II emulation running on the iPad!

It's early days yet, but it builds and (kind of) runs in the simulator (but haven't had any luck on the device yet). Sound hasn't been ported, the colour is all wrong, it leaks memory like there's no tomorrow - but I think it's a start at least.

The source and XCode project is available on https://github.com/pgodwin/minivmac-iphone.

Image


Top
 Profile  
Post a reply  
PostPosted: Sat Nov 26, 2011 8:16 am 
Offline
Site Admin
User avatar

Joined: Mon May 20, 2002 4:37 am
Posts: 3125
Location: Canada
Thanks for stopping by and sharing your work with the forum, superpete! We'll keep an eye on your progress. Feel free to stop by again when you have news to report.


Top
 Profile  
Post a reply  
PostPosted: Sat Nov 26, 2011 1:59 pm 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
I've fixed the video rendering, fixed some issues with accessing disks causing the emulation to freeze, and it now works on the iPhone.

It's quite slow, and sound still hasn't been finished. There's a lot more optimisation to happen esp on the video side of things where it looks like the app is spending most of it's time there!

If you've got a developer license you should be able to download the code, build and sign it with your developer device key and give it a go. Just drop your ROM (MacIIx.rom) and disk images to the Resources directory.

My order of priority for this project is:
1. video performance issues
2. iPad support
3. sound

Anyway's time for bed!


Top
 Profile  
Post a reply  
PostPosted: Mon Nov 28, 2011 11:46 am 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
Pushed up some more changes, this time around video performance and iPad support. Video is probably as good as I can get - it's much better than it was a few days ago. iPad support seems fine, keyboard will need a little work.

Next up is sound.

Again, if you've the means to build and run code on your iOS feel free to give it a try.

I'll try and get a video up of the progress so far.


Top
 Profile  
Post a reply  
PostPosted: Sat Dec 03, 2011 1:34 am 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
I've uploaded a video of it running on the iPad 1 http://www.youtube.com/watch?v=ZfnJB15VA_I

Still can't get sound working...not sure what to do atm.


Top
 Profile  
Post a reply  
PostPosted: Sat Dec 03, 2011 3:11 am 
Offline
Site Admin
User avatar

Joined: Mon May 20, 2002 4:37 am
Posts: 3125
Location: Canada
I'm not sure what the status of sound in the Mac II emulation is. There hasn't been an update about that on the site in some time. Last time Paul wrote about it in the news section it wasn't really working. It may still be disabled.


Last edited by ClockWise on Sat Dec 03, 2011 3:15 am, edited 1 time in total.
 


Top
 Profile  
Post a reply  
PostPosted: Sat Dec 03, 2011 3:18 am 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
It kind of works in 3.2.3 beta, although it's a bit distorted. It's more a case of I'm unsure of how to port the code to iOS in a state that works.

I've examined the Linux and OS X code, I'm going to take a look at the W32 code tonight and see if I can work it out.


Top
 Profile  
Post a reply  
PostPosted: Sat Dec 03, 2011 4:31 am 
Offline
Student Driver

Joined: Sat Dec 03, 2011 2:37 am
Posts: 12
really cool!!! thank you for your contribution!!!
Can this run for A/UX?


Top
 Profile  
Post a reply  
PostPosted: Sat Dec 03, 2011 5:04 am 
Offline
Student Driver

Joined: Sat Dec 03, 2011 2:37 am
Posts: 12
I download your source code, and you seems to use newer SDK, and XCode.

I am using old XCode 3.2.6, because new XCode is slow to me.

You are using Core Video API - CVImageBufferRef, and that will fail in my XCode version.

:(


Top
 Profile  
Post a reply  
PostPosted: Sat Dec 03, 2011 5:07 am 
Offline
Student Driver

Joined: Sat Dec 03, 2011 2:37 am
Posts: 12
what is your iPad1 iOS version?

I found another vmac ios port on ipad1 (iOS 4.3.3) has some problem on screen update without dragging the screen.

I have to drag the screen to let the screen update on iOS 4.3.3.

not sure if your version will have the same problem or not. I'll download a newer XCode, and compile your vmac to test if it works or not.


Thanks


Top
 Profile  
Post a reply  
PostPosted: Sat Dec 03, 2011 5:58 am 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
My iPad is on 5.0, the project is set for 5.0, but it should be able to be built for previous versions without issue.

Screen redrawing seems fine, I at least haven't had any issues with it. It is faster drawing in BW than Colour which from memory was the same with the 68k Macs.

A/UX does not work on Mini vMac. I hear that MESS is getting close to proper MMU emulation and will be able to run A/UX one day.


Top
 Profile  
Post a reply  
PostPosted: Tue Dec 06, 2011 7:32 pm 
Offline
Nice Guy

Joined: Sat Nov 17, 2007 6:46 pm
Posts: 42
ClockWise wrote:
I'm not sure what the status of sound in the Mac II emulation is. There hasn't been an update about that on the site in some time. Last time Paul wrote about it in the news section it wasn't really working. It may still be disabled.


Yes, this hasn't changed. Sound doesn't yet work very well in the Mac II emulation.

Now that I have a bit more time to work on Mini vMac, I hope to find some time to improve the Mac II sound emulation, starting by examining the work done lately in MESS.

superpete wrote:
I've examined the Linux and OS X code, I'm going to take a look at the W32 code tonight and see if I can work it out.


So if you would like working sound before I get to it, you should be looking at the MESS source code.

By the way I'd be interesting in merging in some form of the iOS port into my version of the Mini vMac source code. But likely only a simplified form, not as fancy as I gather the iOS port has gotten. The benefit would be to make it easier to update the iOS port in the future as Mini vMac evolves. The main obstacle, other than lack of time, has been my unfamiliarity with Objective C and Cocoa.


Top
 Profile  
Post a reply  
PostPosted: Wed Dec 07, 2011 3:57 am 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
I've got a C# background myself, so it's been a fantastic learning opportunity for me. That said, other than updating the Glue code, most of the work was originally done by Jesús A. Álvarez who wrote the original iPhone port.

I think getting the sound emulation working is beyond my capabilities, indeed I'm struggling to get the currently emulated sound to be outputted as it is (still getting my head around how the existing ports handle sound, they seem to be doing they're own queueing with TheSoundBuff..?).

Other than drive sounds and the settings window, I'm not sure what you could strip out of the port and have it still functional under iOS. I don't think the built in keyboard will suffice, there aren't any native file dialogs you could use, etc. I suppose that Mini vMac could have a disk search path variable, and allow the control screen to select an image from the list?


Top
 Profile  
Post a reply  
PostPosted: Wed Dec 07, 2011 3:59 am 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
Quote:
I download your source code, and you seems to use newer SDK, and XCode.

I am using old XCode 3.2.6, because new XCode is slow to me.

You are using Core Video API - CVImageBufferRef, and that will fail in my XCode version.


I'll check the current code in soon, I no longer use the CoreVideo API, just the CoreAnimation API for screen drawing.


Top
 Profile  
Post a reply  
PostPosted: Wed Dec 07, 2011 12:31 pm 
Offline
Nice Guy

Joined: Sat Nov 17, 2007 6:46 pm
Posts: 42
superpete wrote:
still getting my head around how the existing ports handle sound, they seem to be doing they're own queueing with TheSoundBuff..?


The basic idea is a ring buffer that the platform independent code writes to, and the platform dependent code reads. The platform dependent code also adjusts how fast the emulation runs, adding or removing a tick every second, so as to keep the sound buffer filled to the desired amount, to keep latency as small as possible while avoiding buffer under run.

In Mini vMac 3.0.4, which Zydeco's iPhone port is based on, the platform independent code requests a 370 byte sound buffer every tick from the platform dependent code. Since the ring buffer size is not a multiple of 370, this requires a hack, where the platform independent code actually writes past the end of the ring buffer, and the platform dependent code copies the excess to the beginning of the buffer.

In Mini vMac 3.2.3, this hack is not needed. The platform independent code requests space, and is told how much contiguous space is actually available. If it needs to write more than that, it is responsible for breaking up the write into two parts.

In Mini vMac 3.2.3, the platform independent sound code also requests space in smaller chunks instead of a whole ticks worth of 370 bytes at a time. This would permit lower latency, at the discretion of the platform dependent code.

superpete wrote:
Other than drive sounds and the settings window, I'm not sure what you could strip out of the port and have it still functional under iOS.


Perhaps so. As I said, I'm not very familiar with the iOS port. Since these days "Mini" is not referring to the complete source code, just the binaries, I guess I could just include the entire iOS port in my version of the source, if I get to understand it well enough.

One question I have, is it really necessary to have that many separate source files? For the other ports, there is basically one source file per port. I guess the convention in Objective C is to have each class in its own file. How strong is that convention?

Another question, how hard would it be to hack the iOS port to more or less run in Mac OS X? Having that to start from would make it much easier for me to get going with learning Cocoa and Objective C. So if someone did that hack, I would credit them for making the Mac Cocoa port of Mini vMac, even if I still needed to do a lot work to polish it. It's clear that a Cocoa port is going to be needed in the near future of the Mac.


Top
 Profile  
Post a reply  
PostPosted: Fri Apr 20, 2012 10:12 pm 
Offline
Space Cadet
User avatar

Joined: Fri Apr 20, 2012 9:56 pm
Posts: 1
Hello everyone. First things first, glad to see that someone is working on a newer and improved version of Mini vMac, i really thank you for your efforts. But, how's development going?. It's been a while and it looks that there is no interest or activity.
I recently upgraded from a 16gb iPhone 3gs to a 64gb 1st gen iPad... And i'm considering to sell the ipad and buy another iphone for the sole reason of bringing back Mini vMac again. Unfortunately i'm no developer and i lack knowledge to compile a working version compatible with the iPad. i Tried all possible things with the old vMac avaliable from cydia and pre-compiled *.deb packages with no luck. Like chinlin0924 stated before, i can't get the screen to update properly.

Just in case that development has been halted, could any of you provide a *.deb package with the compiled sources with the most recent working iPad version?.

_________________
1st Gen iPad 64Gb iOS 5.0.1


Top
 Profile  
Post a reply  
PostPosted: Sat Apr 21, 2012 12:01 am 
Offline
Student Driver

Joined: Thu May 05, 2011 12:26 am
Posts: 11
superpete has been gone for most of the past five months, so I guess you should email him. And then let us know what he says.


Last edited by ThunderSock on Fri Nov 30, 2012 6:37 pm, edited 1 time in total.


Top
 Profile  
Post a reply  
PostPosted: Mon Nov 19, 2012 2:35 am 
Offline
Student Driver

Joined: Thu May 05, 2011 12:26 am
Posts: 11
I found out recently that you can emulate a Mac Plus on an iPad by running vMac 0.1.9.5 for DOS (http://www.leb.net/vmac/download/DOS/vM ... OS-Bin.zip) in DOSPad.


Top
 Profile  
Post a reply  
PostPosted: Wed Nov 21, 2012 7:16 am 
Offline
Space Cadet

Joined: Wed Nov 21, 2012 7:08 am
Posts: 1
@superpete, I am interested in finding out how your progress is going with your app. I am working on a similar application and would like to chat with you about some issues I have been running into. Also, I am looking into new Voip service from http://www.voip-info.org/wiki/view/IP+PBX, so I would like to know if you have any suggestions. Please send me a DM if you are willing and able to chat. Thanks a lot.


Last edited by JeremyL on Tue Nov 27, 2012 9:12 am, edited 1 time in total.


Top
 Profile  
Post a reply  
PostPosted: Fri Nov 23, 2012 10:49 am 
Offline
Student Driver

Joined: Sat Nov 26, 2011 3:08 am
Posts: 10
Hi all

Still lurking around. Ironically I updated the port so my daughter could play old games Mac educational games on the iPad, but she keeps me so busy I haven't had time to finish it.

Code is still on Github, I have no plans on making a deb package for jailbroken devices; I personally don't own any to test it on anyway. If you've got a iOS Dev account, just download the code and build+sign and run it on your iDevices.

If anyone wants to contact me your best bet is through Github.

As an aside, any spare time I have had has been spent playing with the MESS Mac emulation. It's fantastic, and worthy of more attention here at emaculation. I'd love to bring that up to a more user accessible level. I know Paul has been playing around with the code and was kind enough to send me his efforts stripping it down to just the Mac portions. Unfortunately I've not had enough time to do much with it.


Top
 Profile  
Post a reply  
PostPosted: Fri Nov 30, 2012 5:47 pm 
Offline
Site Admin
User avatar

Joined: Mon May 20, 2002 4:37 am
Posts: 3125
Location: Canada
Please do share with us more info about MESS. It is sadly ignored around here. Information, how-to and the stripped version of the Macintosh emulation stuff would be very welcome in these parts!


Top
 Profile  
Post a reply  
PostPosted: Tue Jun 04, 2013 5:37 pm 
Offline
Space Cadet

Joined: Tue Jun 04, 2013 5:21 pm
Posts: 1
It looks stunning on iPad feels like using a real old mac


Top
 Profile  
Post a reply  
Display posts from previous:  Sort by  
Post new topic  Reply to topic Page 1 of 1 [ 22 posts ]


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
 

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group