Questions about windows support

H. S. Teoh hsteoh at
Tue Feb 21 18:37:53 PST 2012

On Tue, Feb 21, 2012 at 08:09:49PM -0500, Nick Sabalausky wrote:
> "H. S. Teoh" <hsteoh at> wrote in message 
> news:mailman.830.1329870386.20196.digitalmars-d at
> > On Tue, Feb 21, 2012 at 06:01:37PM -0500, Nick Sabalausky wrote:
> >> Heh, as bad as this might sound, I think what I basically want is
> >> more or less Windows Explorer on linux ;) 
> > Maybe if you write one in D... ;-) Perhaps *that's* the killer D app
> > that we've been waiting for, that will take the world by a storm. :P
> >
> I've seriously been wanting to, but it's one of many things I haven't
> been able to get around to yet.
> I suspect, though, it might not end up so popular. Linux people like
> the command line. Although it might help further popularize Linux
> among WinXP fans...

Only true for the old guard, hardcore people like myself. Newer Linux
users tend to like their GUI desktops better. Even if they do use the
command-line every now and then. In another generation or two I don't
think many of the old guard people will be left.

> But it's looking like Vlad's D forums might be on their way to being
> D's killer app anyway ;)

Well in that case, we'd better get our act together and produce more
awesome D apps, so that when D starts hitting the media headlines and
people start searching for us, we'd have something to show for it
besides saying "oh, D forums, that's the only really significant thing
we've done so far". :)

> > Ah, good ole Wozniak. Wasn't he the one who practically
> > single-handedly coded up the entire Apple II ROM? Or am I just
> > mixing up urban legend with reality? :)
> >
> My understanding is that he designed the whole damn machine, period.
> And I have a tendency to believe it, because those older systems
> really *are* simple enough that it's totally possible for one person
> to understand every byte, every clock cycle, every chip and every
> wire.

I believe it too. The man's a bona fide genius.

Man I love those old days when I spent hours memorizing assembly opcodes
just to... no, wait, I didn't *deliberately* memorize them, it was just
that I coded in assembly so much I could memorize almost all of the
common instructions.  Yikes. Where did my childhood go?! :P

> Hell, that's a big part of what makes those machines such a dream to
> work with anyway. And also what made them cheap enough for average
> consumers - *especially* the Atari VCS/2600 - That's just an
> absolutely beautiful design in it's minimalism (had to be, to be
> useful and only ~$200). Ever coded for it? It makes even the Apple II
> seem enormously complex and powerful. It's sooo fun.

OK, you beat me there. I never owned an Atari. :(

But yeah, even the Apple II had its complexities.

I still remember puzzling over how Apple DOS can somehow "magically" add
DOS commands to the BASIC prompt without the BASIC interpreter even
knowing anything about DOS. Until one day I discovered that Apple DOS
was hooking into the *keyboard interrupt vector* and listening in on
keystrokes to sent to the BASIC interpreter's command line. When it saw
a newline, it checked to see if the command buffer contained a DOS
command. If not, it lets the newline through and the BASIC interpreter
interpreted the command. But if the buffer contained a DOS command, the
newline would be swallowed by DOS, which then proceeds to run the
command before erasing the buffer and returning to the BASIC
interpreter, as if no command had ever been typed.

Apple DOS also hooked into the console output vector to catch those
programmatic DOS commands which you put in your programs by doing
something like: PRINT;PRINT ^DBRUN FILE;PRINT. The magic sequence was
newline followed by ctrl-D followed by DOS command.  Such output
sequences were "stolen" from the ROM's output routines and put in a
temporary buffer, so that instead of being written to screen they ran a
DOS command at the next newline.

It was clever tricks like these that inspired me to become a programmer.


It won't be covered in the book. The source code has to be useful for something, after all. -- Larry Wall

More information about the Digitalmars-d mailing list