5 ms·
I just want someone to implement how Intuition did screens into any other platform, ideally OSX or Linux. It often gets mentioned, yet no one ever has. It can
by anexprogrammer 11y ago
I just want someone to implement how Intuition did screens into any other platform, ideally OSX or Linux. It often gets mentioned, yet no one ever has. It can't be that difficult. I can live without the copper trickery.
- louprado 11y ago> It can't be that difficult. I remember a Commodore developer(?) once saying "Intuition is the only one word oxymoron he knows". The context isn't clear but perhaps it was difficult to implement.
- vidarh 11y agoThe draggable screen part is not particularly hard. It's basically multiple workspaces coupled with data about screen mode and offset from the top of the screen. Whenever they're dragged, intuition need to rebuild a copper list - basically a set of instructions for a simple co-processor. The copper list will contain a bunch of simple instructions to wait for a certain scan-line, and then write new values into various registers to change screen mode (if necessary), update the palette, and change the source of bitmap data to the location of the next screen.
- chillingeffect 11y agoYeah on the c64, the vic2 video chip could gen an interrupt at a configurable vertical line. So many people used different graphics modes for each band of the screen, Amiga went further and facilitated it. It was fun mixing interlaced (and therefore shaky on a bad monitor) modes with stable modes.
- anexprogrammer 11y agoWow, don't agree with that. I always thought Intuition the nicest GUI I ever programmed. It was beautifully designed. ADos was a mess obviosuly. And rather limited compared to what we're used to now. I remember at the end of the Amiga days buying a PC, Petzold, Visual Studio and MASM. Worked through Peztold, by the end and after porting one of my simpler amiga apps, there was so much swearing and disbelief at how Windows did dozens of things, and my app was now 40x larger with all the shite you needed, just to accept a resize message or somesuch that I sold VC, MASM and the book to some random guy at work and never touched Windows programming wise ever again. Pc had been reinstalled with FreeBSD within weeks too. That was the moment I became a server side developer. :) Played with X a little, but wasn't a huge fan of that either, but it didn't produce the same level of swearing Windows had. Never did any real dev on OSX with the GUI, so don't know.
- vidarh 11y agoEnlightenment provides draggable workspaces, or at least did (I haven't used Enlightenment since about 1999) provide that. I used to use that. The usefulness is substantially less today without having different video modes and the copper trickery (EDIT: For those who haven't used the Amiga, apart from providing multiple workspaces, which was in itself a big deal for home computers at the time, it was exceedingly useful because there was no "best" video mode those days - you could have high resolution and few colours, or low resolution and "many" colours - this made draggable screens very useful as you could e.g. have a high resolution screen visible on part of the display, and a low resolution screen on the rest if you wanted. E.g. some paint programs made use of that to show their toolbars etc. in a fixed resolution, with the image itself on a different screen) Today there's always AROS, which can run hosted on Linux and runs a bunch of Amiga apps, though there are still painful missing parts to AROS and it's not an option to let you run Linux apps on Amiga-style screens.
- nickpsecurity 11y agoDifferent resolutions in different windows? That's pretty cool. I looked into the Amiga's and was most impressed by MorphOS. Had key features, was beautiful, and supposedly faster than Linux.
- vidarh 11y agoDifferent resolutions in different "screens". Each screen is pretty much a separate workspace that takes up the full width and will hold one or more windows, but can be dragged up and down so you can have multiple visible. Here's an example [1]. DigiPaint used one screen for the toolbars, so it was independent of the image you were working on (unlike e.g. DeluxePaint). Here's a video showing screen dragging in AROS (which reimplements the Amiga API like MorphOS, but also runs on everything from original Amigas - with some limitatons - to Raspberry Pi or x86 PCs, both native and hosted under Linux) [2]. On non-Amiga platforms the different screens can't have different resolutions, though. [1] http://don64738.deviantart.com/art/DigiPaint-Fashion-337198511 http://don64738.deviantart.com/art/DigiPaint-Fashion-3371985... [2] https://www.youtube.com/watch?v=HKCHZFYj9Kk https://www.youtube.com/watch?v=HKCHZFYj9Kk