| TIP: Click on subject to list as thread! | ANSI |
| echo: | |
|---|---|
| to: | |
| from: | |
| date: | |
| subject: | [C] An interesting question |
Jerry Coffin wrote in a message to Roy.J..Tellason!1.270.615.0{at}filegat:
Looks like some aspects of the gateway still need a little work here.
JC> From: Jerry Coffin
Yeah, you were around back when, weren't you? :-)
JC> At 02:07 AM 1/15/2004, you wrote:
JC> [ ... ]
> PS> Then I got a PC and (because of school) got into Turbo Pascal.
>
>That was, if I'm remembering right, also available for CP/M boxes.
>In fact
>it was one of the first higher-level languages available for the CP/M
>platform.
JC> It was really a lot closer to being one of the _last_. By the time
JC> it came along, the PC was already imminent, and when it came out
JC> new languages for CP/M became quite rare.
JC> In Pascal compilers alone, there were things like JRT Pascal,
JC> Pascal/S, Pascal/MT+ (which had a number of direct predecessors
JC> itself) as well as a couple of free Pascal compilers.
I seem to remember hearing about how JRT never quite worked the way it was
supposed to... Pournelle, maybe? It's been a while.
JC> On the C side, you've already noted Mix, but there was a pretty
JC> wide range of C compilers as well, ranging from BDS C (small, fast,
JC> pretty usable) to Whitesmiths C which was really FAR too large for
JC> CP/M at all -- it wouldn't even fit on one disk with most systems,
JC> so you had to swap floppies a few times to complete a single
JC> compilation...
I'd forgotten about BDS. A product that tended to do things their own way.
And I didn't know that Whitesmith's had a CP/M product out at
all.
>Yeah, most programs didn't bother with the BIOS because it was too
>slow. And since you wanted to write directly into video ram you had
>to find out what hardware was running (mono or CGA, EGA and VGA came
>a bit later on :-) and where that ram was. Programs were a lot more
>complicated in this respect.
JC> Most programs were a lot more complex than they really needed to
JC> be.
Yep!
JC> In the end, you didn't really want to check the hardware per se,
JC> but the video mode you were going to use. If you were in mono
JC> mode, the screen started at 0xb800, otherwise it was at 0xb000.
That agrees with my recollection too.
JC> The programs that tried to get fancy and detect the hardware
JC> usually ended up screwing things up -- just for example, an EGA or
JC> VGA can emulate a monochrome adapter, so if you assume EGA/VGA ->
JC> 0xb000, your program can end up wrong.
>Ok. Where else would printf show up, under bash? I remember seeing it
>somewhere, in a script file I think it was, and it was kind of a kick
>because I had at least some clue as to what was going on.
JC> AWK would be one obvious possibility -- it's a rather strange
JC> language, but can be quite handy at times.
That's one I haven't messed with at all.
JC> In AWK, you have a set of patterns it searches for, and an action
JC> to execute when a pattern is found. The patterns are regular
JC> expressions. The actions are in a unique language all their own,
JC> but it's somewhat reminiscent of C, and (in particular) does
JC> include a printf.
Yeah, well, maybe I'll get around to it sooner or later. I may have it
installed, I don't remember for sure. If I do it's because of some
scripts or other that need it...
---
* Origin: TANSTAAFL BBS 717-838-8539 (1:270/615)SEEN-BY: 633/267 270 @PATH: 270/615 150/220 3613/1275 123/500 106/2000 633/267 |
|
| SOURCE: echomail via fidonet.ozzmosis.com | |
Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.