john@minster.york.ac.uk (11/17/88)
Would some kind PC expert out there please mail me a *tested* Minix-compilable C program which draws (a straight line, say) on a Hercules-compatible graphic display? Now to a related, but thornier, question. Should Minix have a graphics library, and a `window manager'? I realise that Minix was not intended to include "features grafted onto Unix after the release of Version 7" (shouldn't that be "7th edition"?). I applaud this decision, but feel that with the addition of LAN support, the argument has been weakened somewhat. I would really like to develop graphic programs with Minix. My hope is to support those who will try to prevent the addition of monstrosities like NeWS and Display PostScript to Minix (not enough memory on the PC, anyway :-> ). If the correct way for Minix to go generally is the that of the 8th and 9th editions, then the Blit (Bell Labs Intelligent Terminal) approach - adapted to Minix - may be suitable. This would entail adding a *small* `Display Manager' process (`DM'? - analogous to the Blit's Mpxterm) alongside MM & FS. Arguably the most important routine that would have to be written is bitblt() - and all the different display adaptors in use could cause its author quite a problem :-). Several versions would presumably be needed - as with the hard disk driver. Even so, in his 1987 paper, presented to the Dublin EUUG conference, Bart Locanthi [1] refers to the PC as an architecture which "inherently and actively obstruct[s] the implementation of bitblt() ... the display byte order differs from that of the processor ... and ... the processor isn't very good at dealing with bit-aligned data anyway". I will add that the Hercules graphics adaptor makes things even worse by four-way interleaving display lines in memory. Comments? I'm almost on the side of the `no change' faction; perhaps Minix should stay just as it is now. References 1. "Fast bitblt() with asm() and cpp", Bart Locanthi, Proceedings of the Autumn 1987 EUUG Conference, Trinity College, Dublin, EUUG, September 1987, pp. 243-259. ------------------------------------------------------------------------------- John A. Murdie "For I dipt into the Future, far as human eye could see Comp. Sci. Saw the Vision of the world, and all the wonder that would be Univ. of York Saw the heavens fill with commerce, argosies of magic sails England Pilots of the purple twilight, dropping down with costly bales" ukc!minster!john Alfred, Lord Tennyson
wheels@mks.UUCP (Gerry Wheeler) (11/21/88)
In article <595772331.26840@minster.york.ac.uk>, john@minster.york.ac.uk writes: > Should Minix have a graphics library, and a `window manager'? > My hope is to support those who will try to prevent the addition of > monstrosities like NeWS and Display PostScript to Minix (not enough > memory on the PC, anyway :-> ). If the correct way for Minix to go > generally is the that of the 8th and 9th editions, then the Blit (Bell > Labs Intelligent Terminal) approach - adapted to Minix - may be suitable. > This would entail adding a *small* `Display Manager' process (`DM'? > - analogous to the Blit's Mpxterm) alongside MM & FS. Sounds good to me. Hopefully this will be doable on the ST version as well? While we're talking about graphics, I'd like some input about how graphics can be done within MINIX. For example, on the ST, one could use /dev/mem to write directly to the video memory, but I think that would be rather poor. Perhaps another minor device can be added to the memory driver which references the video memory? At the moment, I'm just thinking about the ability to put bits on the screen, so that I can show Neochrome pictures for example. However, eventually I've no doubt there will be some sort of graphics manager that will require access to the screen. Perhaps this driver could be the bottom end for it. In fact, perhaps this driver could also be the bottom end for the tty driver so everything goes through a common interface. Just a thought. Any other ideas? -- Gerry Wheeler Phone: (519)884-2251 Mortice Kern Systems Inc. UUCP: uunet!watmath!mks!wheels 35 King St. North BIX: join mks Waterloo, Ontario N2J 2W9 CompuServe: 73260,1043