Path: utzoo!attcan!uunet!lll-winken!lll-lcc!ames!ncar!oddjob!gargoyle!att!rutgers!bellcore!u1100a!krohn From: krohn@u1100a.UUCP (Eric Krohn) Newsgroups: comp.lang.c Subject: Re: Self-modifying code (really Blit graphics) Message-ID: <2079@u1100a.UUCP> Date: 13 Jul 88 15:57:18 GMT References: <12330@ut-sally.UUCP> <225800044@uxe.cso.uiuc.edu> <8239@brl-smoke.ARPA> Reply-To: krohn@u1100a.UUCP (Eric Krohn) Organization: Bell Communications Research, Piscataway, NJ Lines: 18 In article <8239@brl-smoke.ARPA> gwyn@brl.arpa (Doug Gwyn (VLD/VMB)) writes: ] As a significant example of C's efficiency for graphics programming, ] virtually all the code in the Blit, DMD (5620), and MTG (630) ] bitmapped terminals was written in C, and their graphics operations ] are extremely fast. No self-modifying code was necessary. Virtually all? Yes. The most critical? No. The bottom-most level of all screen updates is the infamous bitblt function. A 1982 BTL memo by John Reiser tells about the on-the-fly code generation done by bitblt to achieve rather good performance on the original Blit. I've assumed that similar code was carried forward to the 630 and the 5620 (even with the CPU switch). My 630's host is down for hardware upgrade now, so I can't disassemble the firmware to see what code is really there. -- -- Eric J. Krohn krohn@ctt.ctt.bellcore.com or {bcr,bellcore}!u1100a!krohn Bell Communications Research, 444 Hoes Ln, Piscataway, NJ 08854