From mboxrd@z Thu Jan 1 00:00:00 1970 Message-Id: <8126F5C4-87DF-4EB8-9470-FACCB5B1BEAF@gmx.de> From: =?ISO-8859-1?Q?Andr=E9_G=FCnther?= To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed; delsp=yes Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Apple Message framework v930.3) Date: Wed, 25 Mar 2009 21:57:53 +0100 Subject: [9fans] GSOC: Drawterm for the iPhone Topicbox-Message-UUID: c510fa5c-ead4-11e9-9d60-3106f5b1d025 Hi dear Plan9 fellows, my Name is Andr=E9 G=FCnther. I'd like to participate in the gsoc with = an =20 implementation of a drawterm on the iPhone platform. In this Mail I'd like to do the following 2 things: 1) Say some words about me and motivation of this project. 2) Present preliminary suggestion how I would proceed with the = project. I'd like to ask you to: 1) Discuss if this project is actually wanted. 2) If 1) is positive: Discuss my application. Me and my Motivation: I am 21 and an undergraduate in Philosophy and Cognitive Science at =20 the university of Freiburg. During the course of my studying i've been =20= taking several computer science classes. The reason I am not studying =20= computer science is, because I have the feeling for problem solving an =20= autodidactic method is sufficient for most cases and for which it is =20 not I am taking those specific classes. I have about 8 years experience with programming C and working in unix =20= like environments. I am working on the mac platform for about 5 years =20= now and aquired some ObjC skills. That means I have done Cocoa =20 development. So I am familiar with apple like APIs and also the whole =20= XCode environment. I haven't done any iPhone development yet, but I am =20= pretty confident, that I can acquire those skills with my background =20 in no time. (I have no apple developer license for the iPhone, but I =20 have an iPhone and I am able to test custom applications on it. I =20 would of course apply for a license if I do the project) Unfortunately I can't show you any recent work of mine, because it's =20 all internal university stuff I am doing for the lab, which I am not =20 supposed to post anywhere. I've been following Plan9 shallowly for some while now. But just =20 recently got more into it. I am using it exclusively in a Qemu/=20 Drawterm fashion. I'd like to explore more of Plan9 in the future. Though I don't feel confident just now messing with kernel sources or =20= other important infrastructure, a drawterm port may just be the best =20 thing to do. My mac experiences will come in handy, too. Why is the port necessary? Well Plan9 is awesome. Being able to drawterm into it with my iPhone =20= would be totally awesome. I don't know how you guys feel about this. =20 Please discuss! How to proceed: Because I might have just failed with the above text, I don't want to =20= go into much detail now. Still a small outline here: I think there are two parts to the question: 1) How does drawterm theoretically transform into an iPhone =20 application. 2) What are the technical things to deal with 1) is much about interface design. Clearly the iPhone doesn't have a =20 keyboard nor a three button mouse. For the keyboard it might be sufficient to provide the standard =20 onscreen keyboard apple provides. For the mouse I haven't yet wraped =20 my mind around the problem. Double tapping and gestures come to my =20 mind though. Another possibility would be to have onscreen virtual =20 mouse buttons, but that might be not the best solution. Also Bladerunner type of zooming gestures might come into handy, with =20= such a tiny screen, which is clearly another limitation of the =20 hardware platform. 2) The drawterm code base is pretty much self contained and C based. =20 The iPhone OS is pretty much a stripped down OSX and should be stable =20= enough for that and doesn't amount to much more than a recompile. So the main part is providing the draw/audio and other devices. =20 Reusing osx code is not possible, because the iPhone doesn't share =20 that particular API the code base is using. Here a new implementation using ObjC and the iPhone API is necessary. Best wishes, Andr=E9 G=FCnther=