OwenShow: The Release!

Yup, you too can enjoy my beloved idiosyncratic directory/file browser, no matter how ill-advised that may be! ... Delphi and Kylix and Windows for that matter may all be obsolete, but here is a link anyway (3 megabytes?). ... Complete obsolete Delphi 7 source + HTML help via the astonishing OwenHelp tools. ... And be sure to check-out JX the OwenShow (Windows) execution-history companion, q.v.!

... The Windows OwenShow link above comes with its own nifty totally-superfluous genuine Windows installation program with beautiful graphics! If that’s too silly, this is about 3 megabytes of oswin.exe, which’ll just explode into the thing wherever you want it, i.e. some subdirectory like “c:\os” far from the maddening “program files” pathological sticky Usux™ ghetto. Although I believe the installation sticks it in jgo/owenshow or something....

No Unicode!

I suppose I should note that among many sub-optimal disappointments, I never upgraded OwenShow to unicode. Besides pathological sloth, I don’t like unicode; I don’t want file names in Chinese. So all the wacko characters are shown as black boxes or something, and it doesn’t bother me a bit. ... Obviously if I were Chinese I no doubt’d feel differently....

No Linux!

Sadly the Linux desktop never quite got going — but it wasn’t my fault! ... I released ages of these stupid things for Windows and Linux. But no más. ... Here is the last Owenshow Linux version (vh5) from 5/20/10 which, for a little while, worked as well as it ever did. ... And I used to use it every time I ventured forth in the fabled Land of Linux. ...

But those halycon days have passed, and Kylix (32-bit) programs, at least my vh5 Owenshow, will run no more forever in the modérne (64-bit?) Linices, at least mine didn’t, not in the VirtualBox Linux Mint thing I’ve got. .... That’d be the brave progressive Linuxoids keeping-up with the despicable Windows mediocrities by obsoleting the boring old software every few weeks so wittle lusers won’t hurt their wittle selves. ... Although, as with all things Linuxy, there may be some stupid setting the gurus know and I don’t; but so be it. And we can all use Midnight Commander....

All Things Decay (8/15/13)

There’s a quote I must find again in Brooks’ Mythical Man Month with this autumnal sentiment, which sadly my beloved OwenShow cannot escape, and which I must admit after years of denial: OwenShow struggles with the latest Windows systems. Because of the ridiculous numbers of directories, which resource is of course multiplied by the ingenious Microsoft scriveners without restraint — because it’s free! ... I don’t know that Brooks saw that threat, all dewy-eyed in the dawn of creation ’n’ all. ... Directory structures are free because nobody needs to see them all; except me ’n’ OwenShow, the valiant and weak ’n’ weary....

On my average Windows 7 system, OwenShow takes several minutes simply to count just the c:\Windows\ directories — I’m tapping my foot as I type — and tell me there’re 22,914 of ’em, with 115,406 files! We all have a vague idea how many bytes it takes — about 26 gigs in this case — but the sheer number of directories makes the system essentially unknowable by any but machines, and even they grow weak and gasp. ... I long ago took defensive measures, instructing OwenShow to only scan the first level Windows directories, but the rot has spread to the whole system and everywhere I wander in my once-beautiful directory structures, there’re shoals and hidden corners of vast endless directories....

But then again ...

So the blinding insights offered by OwenShow have been boiled-down, by the march of time, into this simple factoid: too many directories still sux. ... Of course there are a few minor code flaws in OwenShow that, with immense effort, I could fix so it wouldn’t be so annoying — most significantly, it searches everything for various purposes, which used to be hardly noticeable but now would be greatly ameliorated by searching a restricted range — but in the event I just make do by using ever-faster PCs. ... But then again (5/18), the computers get faster, and I just don’t try to scan all the Windows directories; it’s a stupid idea anyway. So my directories, which lurk in a small integer number of root directories, work fine and OwenShow cruises into the future, stumbling and gasping....

Too Big Files

I can vaguely remember persuading OwenShow and its little friends to count above 4Gb for directory totals, and have even vaguer memories of feeling that if the files were bigger than that, to heck with them. ... Of course the marching winding years have decided that an ISO file I was trying to copy was bigger than that, and now all is lost. I will go in and try to fix the thing, converting my jejeune Delphi Cardinals to int64s, or I don’t know what, but what about the next onslaught? How can I stand against it? ... Oh, the brand new owenshow release has conquered 5 gigabyte files. These int64s are supposed to be good up to around a ~billion gigabytes, so we’ll be safe as houses....

And Still ...

So I still prefer the arthritic OwenShow to the lovely and gracious Windows File Explorer or whatever it’s called this week. ... And the ever-elaborating owenshow-crippling OS juggernaut is inevitably impeded by the sad & in-denial decrepitude of Moore’s Law....

— the autumnal programmer

Our Directories, Our Selves

Blinding Insight time: OwenShow isn’t just a cranky geekhead annoyance! ... No, no, it’s so much more! It has the potential to illuminate the only organizing principle that modern computers share: the directory tree structure, the alpha and omega of modern computerized data.

The *nix masters know, but do not speak. The pitiful Macintosh elite mutilate their directories unsought & unknowing, with the flick of a mouse — I got a mini, and did that within a day of first power-on. This dangerous stupid power was bequeathed to the Windows hordes and its File Explorer — but OwenShow doesn’t do that. ... But I actually did that in a Windows CDR-burning program! ... Clicking endlessly through the tree, I came at last upon the directory I wanted to burn from — the program, like many, was far too stupid to paste-in a path from the ever-helpful OwenShow — and, overcome by excitement I guess, I accidentally moved a subdirectory to another subdirectory with the flick of a mouse! So handy. ... If you haven’t done this yet, you don’t use Windows or the Macintosh — or you’ve secretly been using an Owenshow-like file manager — or, more likely, you just haven’t noticed; I mean, everybody who uses these machines is constantly complaining about how they can’t find anything, hence the foofaraw over desktop search gadgets which don’t work either....

And so you and practically everyone have no idea — where is the data?! ... You know it’s in the computer somewhere — probably — but the one simple actual-working real system that could help you is universally regarded as a menace to normal stupid beings, & impossible to master. ... And it’s all true; the only reason I can use it is I’m so smart. With my superior moral character and towering intellect, I understand directory structures, but unlike the guru masters, I speak — well at least I write and write and write. ... And I wrote OwenShow, so you can find your directories. ... No one can find your directories for you; you must go alone into this vast intricate maze — but at least with OwenShow you have a tool, a geeky friend, on the twisted path. ... And the reward is great: mastery, power, knowledge. ... So go forth; Know Thy Directories!

Comprehensively Discredited

And then an inmate of a British magazine explained in his Snooty Advice column that everyone knows nested directory structures are the worst possible user interface known to mankind and distant star systems:

“The tree outline view has been comprehensively discredited as an appropriate user interface control. Alan Cooper, the father of Visual Basic and the author of the seminal book, About Face — The Essentials of User Interface Design [blathers] nested hierarchies exist for the convenience of the programmer, not the user.”

— “Tree hugger” Ask Luis page 143 PCFormat 4/05

So there you have it; Use OwenShow — Be Discredited! ...

— Thu 5/3/18 3:12 pm

JX: The OwenShow Executor and Execution History Companion! And So Much More!

For years I’d gotten by with a dangerous pile of batch files and MSDOS executables while I feverishly wandered my hard drives with OwenShow (and OwenView before it) executing important real-programmer missions. ... The batch files are still there — indeed you’ll find at least one in the exciting jx release — but now at last I have a wonderful compelling GUI from which to execute the strange and numerous commands I need to keep the computer attic afloat — and now you too can have this valuable tool with Delphi source at no extra charge! ... Included with this special offer only are instructions on how to integrate the thing with OwenShow and your DOS box! ... Never before offered on this web site! ... (And be sure to see the JX story directly below for what this nonsense is actually supposed to do!)

Also Included Without Cost!

The idea is to stick JX and at least the first of these valuable utilities in the path, and watch your system explode and melt with excitingly vivid new colors and smells and smoke, crashes and general chaos....

again.exe: with Builder 5 source. Replaced hyperx, the revered command-line predecessor to JX which was used by JX to support redirection and a little keypress/“run again” function. ... Basically “again” is a simple wrapper for the “system” library call — as opposed to hyperx, which is a ridiculously-complicated wrapper for the same call....

... And just for the heck of it, included today only are a few utilities I’ve used for years in batch files numberless to man:

batch.exe: It came out of 1988, and is still handy for the “yn” function if nothing else, i.e.

@echo off
batch yn Continue destroying the environment? (Y/N): N^^H
if errorlevel 1 goto done

Antique Assembler (!) source included. ... And in these decadent latter days, 32-bit C — well actually looks like C++! — source also....

setxp.exe: Win32 evolution of my venerable 16-bit setenv.exe (not included), which really hasn’t worked that well for a while even in Windows 98. ... Setxp also duplicates / enhances some batch functions. It implements environment-variable functions with trickery, explained in the endless help produced by entering the program without arguments. With obsolete Builder 5 source.

The Zip

It’s just a zip file, it doesn’t need no stinking install — well, if you need an install JX is probably not the ideal program for you. And here it is ! Of course I should note downloading anything from this or any other site will destroy all beauty and decency and your favorite pets in a 15-mile radius around your current location.

JX and Windows’ Trash-the-command-history Feature

But I see I’ve failed to explain JX’s Windows/doskey outlook: it’s intended to remedy disappointments in the “doskey” feature of MSDOS as implemented in its 32-bit Windows successors — where “doskey” is a feature (still available today!) which replays previous command-line incantations with the arrow keys.

... I could’ve probably produced a Linux version of JX without much trouble — but it would’ve been pointless: JX’s raison d’ętre is capturing all my feverish command-line activities, particularly the long, complicated ones, and Linux already does that, with no stinking “feature”, out of the box so to speak. In the Linices I’ve used anyway, the Bash shell has a global command-line history, so you can exit a shell, start another, and it’s all still there. ... Even through power cycles! ... But that’d be because the fabulous GUI “Linux desktop” was just a childish joke....

But 32-bit Windows is too stupid for that. ... Unless I used the sainted OwenView, the previous 16-bit character-oriented hopelessly retro predecessor to OwenShow. ... The OwenView program ran inside a DOS shell, so when I “shell” out of OwenView — well, actually, I forgot what happens but apparently I do indeed run command.com which nevertheless remembers the commands I do in that shell even after I exit it, return to OwenView, and shell again! — Of course I just realized, because I was still in the same command-shell with just the temporary intervening execution of an Owenview or so; this was obscured in those glorious days by one of those tricksy high-memory DOS hiders. ... Whatever. ... I had already noticed that even the W98 32-bit OwenShow couldn’t transfer environment variables to spawned W98 command.coms, and I guess this is just more of the same. ... So in the idyllic antediluvian era of naked DOS, we remembered command-line histories, even crossing shell spawns! At least we did in OwenView! ... Ah those innocent times!...

... So JX, in combination with the fairly-obvious X.BAT file (which JX creates if necessary), remedies this annoyance in a dubious and intricate way, so long as I remember to use “x” instead of “exit” when departing a shell — and I get my lengthy DOS commands back again! And in a beautiful GUI, instead of the spartan command-line! ... Ad astra!

— Friday, May 25, 2012

OwenShow, Linux ...

We hardly knew you. ... Well actually I knew you only too well. ... Linux, not expertly certainly, despite my wildly irresponsible resumé claims, but I still use OwenShow every computering day....

But, sadly, my OwenShow Linux development machine came to a final halt this morning Tuesday, November 2, 2010. After a long life, first annoying employees somewhere starting in 2003, and then retiring to the Owen Laboratories to eek out a pitiful existence running Mandrake 9.2 which still managed to run Kylix 3 — as well as Mandrake or Linux for that matter ever runs; although perhaps a bit worse. ... It was of course a proud dual-booting machine, with an XP system in the other partition. ... I backed-up to Windows machines, giant zip files, and maintained the dual-OS Kylix source assiduously....


But now it is done. ... And, really, the whole Linux desktop thing was a scam: we were supposed to do it because it was good, ethical, moral — rather than functional. Which it never was. I mean other than for the minority of Linux developers. We were supposed to lie about it in our puffy publications, because that was good, too. ... Poor Linux Journal rose to a higher sphere (aka “ceased publication” aka tranfigured into a “webzine”) even ’though they honored the taboos — well, they slipped too frequently, perhaps, making it all too clear the silly thing only worked on the command-line. But then so does Linux Format, their successful Brit competition, still among us and seemingly doing fine! ... But they all relentlessly lie about how the desktop works great, burble burble. ... And then there are the Android tablets which are in fact Linux desktops — where OwenShow definitely doesn’t run, nor do the fabled KDE or Gnome desktops, beloved of the caring feeling mendacious community. ... So all the latest Linux desktops contrive to look like Google’s Android.

Use Linux Midnight Commander

Anyway, the score after the game is over is Linux’s Midnight Commander (MC) was always a better file wanderer for real Linux users: i.e., on the non-GUI command-line. From my point of view, I shouldn’t’ve bothered with this Kylix GUI stuff — well, as it turned-out nobody should’ve — and stuck with my precious MSDOS proudly-character-based OwenView; and/or perhaps hacked MC to my strange and sickly desires. ... In the event, Microsoft realized some years ago they weren’t going to beat corporate server customers into relying on their wacky GUI — i.e., in that sphere, Microsoft had to accommodate itself to the Unixy competition and provide/support command-line utilities in copious quantities. ... So, wild passionate Linux OwenShow fans, expect no new OwenShows here; I’ll still distribute an old Linux version probably, but it won’t work anyway....

— the cranky programmer indeed

Computer Science: EZ Delphi Assign

In C++, you can assign one object to another just like “a=b”, assuming a and b are instances of the same class. Fields in the class that are “plain old data” like integers get copied and go on to live an independent existence. ... If the class includes fields that are allocated pointers — i.e., instances of other classes that were allocated with “new”, or just plain old “malloc” data — the built-in simple (aka “shallow”) copy will only copy the pointers for these things, instead of making a new thing, and those pointers will not live an independent existence. C++ programmers must therefore concoct copy constructors to take care of such things; allocating another thing usually, and then copying it (aka “deep” copy)....

... The beautiful almost dead-language/environment Delphi, like some atavistic lizard-plant, doesn’t get nearly that far. It cannot conduct a simple copy of object instances — which is probably better than the C-- deceptive built-in, since the programmer is obliged to provide a special method to do that, usually named “assign”.

Tclass = class
  one, two, three:integer
  procedure assign(source:Tclass);


procedure Tclass.assign(Tclass source);
  one := source.one;
  two := source.two;
  three := source.three;
  bingo := TStringList.Create;


Tclass a, b;
a := Tclass.Create; b:= Tclass.Create;
a.assign(b); {that’s how it’s used}

As you can see this is terribly boring. And a maintenance problem: you have to remember to fix the assign method whenever you change any of the data in the class, even if it’s plain-old data. ... Hence the amazing thing what I discovered and what you should do is

Rclass_copyable = record
  one, two, three:integer;

Tclass = class
  procedure assign(source:Tclass);


procedure Tclass.assign(Tclass source);
  r := source.r; {copy all the
                 at one blow!}
  bingo := TStringList.Create;

Voila! ... Because Delphi does know how to copy records. ... It’s still a maintenance problem for all the non-plain-old-data; but you can now add plain-old data to your class, through the utility record, with impunity! Without changing a line of code in assign!...

... So where is my speaking tour? My big book deal? My google audience?...

An example of this brilliant technique will be found in OwenShow’s publics.pas Texec.assign. ... And incidentally, as far I can tell Delphi’s Tpersistent isn’t any help....

— the guru-at-last
Thursday, October 4, 2007 3:12 pm

Kill95 Utility

The command-line alternative to the w9x control-alt-delete program-close function. I found this on the web and then hacked it a bit, so as usual you should assume it will annihilate everything you hold near and dear up to and including your second mortgage, but I find it real useful so here it is (right-click, “save-as”): ... Go “kill95 /?” on the command-line to see what fiendish destruction it’s capable of. Of course if you don’t know or want to know what a “command-line” is, it’s a complete waste of time....

But use TaskKill instead ...

In windows 7 at least, the command-line utility “taskkill” is supplied to do this, and it does it very nicely — but requires more mumbo-jumbo. Type “taskkill /?” to see its endless informative message. The kill95-like functionality is probably “taskkill /IM yourprogram.exe” — well, no, it’s really even better; it’s a polite version: it just requests the program to close normally, and the program, for instance, might ask you if you want to save your document, etc. ... Adding “/F” might make it a kill95 equivalent....

... Except to Detect a Program

One talent kill95 has is detecting a program running, like “kill95 jOrgan.exe -t”; see the informative “kill95 /?” message.

Process Explorer

A really great free GUI tool is procexp from the genius Mark Russinovich over at sysinternals: kill programs, find evil file-handle hoarders, and so much more. ... Actually he has numerous other useful Windows system utilities for free over there. ... Which, to be sure, was bought-up by Usux™ lo these many years....

The Eternal Typewriter

My father spent many presumably happy years (it seemed like decades at least) working on a hand-held typewriter that would revolutionize note-taking; it would be so small and convenient and ez-to-use that anyone could operate it and take notes at lectures, on airplanes, lounging lakeside. ... Sadly this convenience came with a price; notes would have to be rendered in a sort-of pseudo font; each letter would consist of a combination of finger movements/segments easily committed to memory — a Palm Pilot Graffiti™ before its time — but the mechanism would automatically move the paper along horizontally and vertically. ... That =/ may be a picture of the remains of a prototype, or it may just be some random debris from the basement — because over the many years we fanatically resisted any attempt of his to expound upon the many astonishing conveniences and features of the device.

— Tuesday, November 8, 2005 6:49 pm

And see the microwriter, a totally unrelated computeristic rendering of the idea, also a total failure.

The Wurly of My Dreams

(12/18) That would be my Wurlitzer 200A electronic piano, in a dream state more than a few years. My beloved Yamaha DXG500 <= has a perfectly adequate supply of “electronic piano” sounds, probably infinitely superior to the poor broken wurly. But I am driven by guilt, despair, & relentless duty to repair the 200A (1.) because I broke it and (2.) because it is a family heirloom, passed down in sacred trust and/or blind neglect by my departed parental units. ... My mother apparently would tinkle away on it, until the arthritis got too bad. And I can’t throw it away, what with the exorbitant web prices — actually there’s a beautiful site where you can find sold prices! And they’re going for $800-$1,700!

... Sadly, I don’t even particularly like piano sounds, electronic or acoustic. Glenn Gould has started to annoy me, on my endless renaissance-baroque-theater-organ muzak, because I don’t think Bach clavier music really plays that well on the piano — the harpsichord renditions usually sound better to me. And I am totally scornful of the wildly proliferant magic ears snoots who claim all kinds of super audio privilege for various arcane bits o’ junk, astonishingly always correlating with high price$ — it’s amazing how authenticity drives up the fare!

But I am fond of schmalz, with the beautiful organs, and in lounge piano music, which I will occasionally attempt on the aforementioned DXG500, to great personal satisfaction, playing occasional antique sheet music or the marvelously EZ-play Reader’s Digest Parade of Popular Hits. ... My devotion to which has obviously fallen-off, since I couldn’t find it right away just now. ... But nevertheless I must repair my Wurly — “to destruction” if that be my fate. ... It’s been too long in the music room, sullen & silent.

The trouble is, it’s complicated! I actually bought a $10 video from the admirable www.vintagevibe.com, a center for all things wurlistic, but theirs is a sophisticated much-more modular 200A, with handy detachable plugs. Mine’s got wires stuck all over the place which I have to do something about, before I can lift up the central metal platform to get at at least one broken key — which, mysteriously, isn’t my fault. The video was useful, in that it told me I would have to get that metal thing up, of which I might not’ve been certain otherwise — which was easily worth the $10.

But even after I fix the key, if ever, I have to replace the output transistors, or at least so I guesstimate, since I broke the thing by plugging in an 8-ohm speaker to its aux output, after which it will only make sad barking noises with traces of harmonic tonality. Perhaps if I ever get so far, I’ll tack in a 100Ω resistor or something, to save it from future idiots....

Why not get it repaired? At one of the music stores that infest the internet? Which will never screw-up, and always charge vast $ums? Where shipping will cost more than my DXG? ... Because I don’t feel like it; I’m a pitiful DIYer, and I will fail in my own good time, which is quite leisurely, and perhaps even know the reason why. ... And really, so far I’m enjoying the ride. I’ve bought clouds of insulated connectors, crimping tools, and cable labels for a few bucks, so I will cut cables with wild impunity. The labels were useful, but the connectors turned-out to be totally unnecessary when I finally figured-out what to unscrew, including a ridiculous volume potentiometer stuck on the totally-inaccessible bottom of the thing. ... I mean, inaccessible during performance, which is what I assume the stupid thing was supposed to do in that annoying position. I imagine the piano player crawling under with a screwdriver with the strobe lights a-flashin’. ... But I do still fear the output transistors: with the unlikeness of my 200A to the video’s, I can’t help but wonder if I’ve got the wrong output transistors, which vintagevibe also supplied.

And now that I got the metal thing out, I can fear the broken key first, which still seems utterly inaccessible. And see that spring, on the right of the detailed diagram over there =>? Not only doesn’t it exist on my wurly, it doesn’t even exist in the beautiful vintagevibe video! And apparently, to repair my single key, I’ll have to take the entire piano apart. ... The chord organ was a lot easier. I guess by that still-ancient day, Hammond had figured-out what a whole bunch of grief is induced by unrepairable design. ... The wurly is just repulsive; they didn’t want you to repair it, they wanted you to buy another.

The Fault in Our Stars

So I got the tines assemblies off and still couldn’t take the key out, but I did at last get to see the fault — which of course was entirely mine — I used a too-long screw to put one of the wurly legs back-on in the dénouement of the Great Move, and it obstructed the key. I am totally guilty. ... And I should’ve figured-out how to see it earlier, with some kind of mirror or gadget.

... And I am doomed to put it back together and verify it still barks, just in case I’ve managed to wreck other innocent victims along the way. And then confront the wily transistor. At least I know how to get the stupid metal thing out. ... So I will continue to joyfully curse the darkness and puzzle over cryptic diagrams. ... Speaking of which, when I peeked at a schematic I discovered there’s 150 volts in there, looks like fed to the pickup at a very low current — oh my gosh, these people (search for “struck reeds”) explain it’s a capacitive pickup, of course! Like a condenser microphone; the tines are all one plate, and some kind of intricate metal structure around them is the other....

It Barks!

So after 17 months of pointless labor (subjective time), I plugged it in to let the smoke out, but instead — it barked! As of yore! Now I will try and replace those wily transistors, maybe....


Well it turns-out those peculiar components I’d been studiously ignoring weren’t power supply coils as I’d neglectfully imagined — they’re fuses! And the left one is open! ... Googling “wurlitzer 200a fuse” not only found a place to buy a self-resetting replacement — which I will solder with consummate skill right over the existing blown fuse — but various webby murmurings of the distortive effect such an open causes. So my pitiful wurly was defending itself, against me! ... And once again I have gloriously wallowed in ignorance. ... However, I have had wonderful adventures, plugging in my real engineer’s oscilloscope and running an ipad through the wurly for test. And I may yet blow it to smithereens when I try out my hobbyist power-supply before/after installing the resetting fuse....

Yup; I clipped the beautiful new fuse to the old open one — and the wurly ceased to make any noise at all! It barks no more, forever?... Arguably, an improvement, but it’s not any fun anymore.


I could tell which way the wind was blowing when my real engineer oscilloscope — not the Hitachi in the picture , but my second real engineer’s beautiful cheapo Owon PDS 6062T ’scope with battery power — well, the battery didn’t work! It’d charge great, and if I unplugged the scope when it was on, it’d stay on with the battery — but it wouldn’t turn-on. Pressing button, nothing. ... This was my second scope battery, after the first one got tired, and I bought it from amazon @ 5/23/16, but apparently didn’t get around to noticing until my triumphant wurly dotage. The old battery of course still works, poorly, including as it undoubtedly does whatever jiggery Owon copy-protected it with — well, actually, it appears I never understood how to charge it — supposed to be with the stupid scope lit-up, apparently. This is totally alien to your average cognitive-impaired old techy, ’cause it was important not to leave CRT scopes on, because the tube’d wear out! But the LCD scope screen is immortal and’ll never wear out; and of course it’s wonderfully decorative even for the staggeringly out-of-date pitifully confused techy. ... And maybe the battery’ll charge better. ... And it did!

... So in conclusion, at least, everything I know is wrong, which is comforting. ... And all in all, I think it’s time to button-up the wurly and let it lie fallow for a few weeks, or golden years. ... At least the high voltage’s still there....

— the foolhardy programmer