ericco@ssl.berkeley.edu (Eric C. Olson) (03/27/91)
I've started developing an object oriented window system for the Atari. Has somebody already done this? If so, what was your approach (and how can I get it)? If not, perhaps you'll be amused at my attempt. First, I haven't used by Atari in a long time (for programming). I started to think about selling it, but I decided to give it a review. I've been (somewhat) following c.s.a.s.t, where someone mentioned Xlisp. Well, as I poked through my disks, I discovered that I already had a copy. Browsing through the documentation, I noticed that it was kinda object-oriented. But it did have any atari interfaces really. I'd also recently interviewed a guy from autocad who mentioned that it used Xlisp as an extension language. It looked pretty easy to add C code to Xlisp, so I added a couple of bios functions to it. And guess what ... it was easy -- so soon as I remembered that bios function work and gemdos function almost work. Grinning with success, I took on the AES -- which I vaguely remember hating. All I can say is that some of that old code must still be cluttering my mind, since I quickly got a window going. So, the long and the short of it is, I'm thinking about following this up a little more seriously. Before I commit, I'd like to know about other atari work, and general interest in this. The general direction would be toward a single large application that integrated other C source code applications into Xlisp objects. The idea being that it shouldn't be too hard to convert a C library into an Xlisp object. The AES interface will be my first attempt. I'll blow off any attempt at working with multiple screens, but I think it will work with any VDI complaint device. Hmmm, Eric -- Eric ericco@ssl.berkeley.edu
david@doe.utoronto.ca (David Megginson) (03/27/91)
In <ERICCO.91Mar26232949@sdaf1.ssl.berkeley.edu>, Eric C. Olson writes: > I've started developing an object oriented window system for the > Atari. Has somebody already done this? If so, what was your > approach (and how can I get it)? If not, perhaps you'll be amused > at my attempt. > Well, obviously you will want this system to be able to multi-task. Instead of writing the code yourself, you might think about using Eric Smith's MiNT, which adds BSD-type extensions to TOS. You can re-compile XLISP with GCC and ES's MiNT library to use MiNT by default. MiNT will make it easier to put BIOS i/o into windows, manage multiple threads of the same program, etc. etc. BTW, to try out your ideas, try using XLISP under MGR. MGR is a windowing system where all graphics, window management etc. is done with escape sequences, and it runs on the ST under MiNT (ie. you draw circles, open and resize windows, pass messages, etc., the same way that you turn inverse video on and off on the vt52!!). You could write all of the MGR code IN XLISP first (just print the appropriate escape sequences to the screen), and then hard-code it into C if you want to. The advantages of using MGR are that you can concentrate on the high- level logic of your project instead of the nitty-gritty details of getting BIOS output into GEM windows, etc. Also, your XLISP code will be portable to Unix or Mac machines running MGR (Minix may soon have MGR too), so you are looking at a much larger potential user base. It sounds like an excellent idea, and I hope that it works out for you. You will need at least 2 megs to use MiNT and MGR, I should add. -- //////////////////////////////////////////////////////////////////////// / David Megginson david@doe.utoronto.ca / / Centre for Medieval Studies meggin@vm.epas.utoronto.ca / ////////////////////////////////////////////////////////////////////////