9BM: Muh mugh muhn nmuh

As a capacitor of mental energy, I seem to be able to store about fifteen days' discharge at my peak rate. I've felt, these past few days, the winding-down of my Atari project coming-on, and this evening, as I began looking-over the lines of code in my editor, I felt the weight of my fuel gauge's needle come to rest against its housing beneath a dimly-lit E. Juice exhausted. Time to rest.

It could be months before I write another line of 6502 code. That's the way I operate. My appetite for understanding is ravenous, my compulsion to implement is overwhelming, but both are rapidly exhausted, and my compass now will spin and spin having arrived at that inevitable arctic nexus of project limbo. My brain is a limp organ. It slumps and wheezes.

I now look back at the past two weeks and ask, what have I gained? Well, in the concrete, I've only gained a functional-but-incomplete start to a word processor implementing proportional fonts on the Atari 800-series; in the abstract, I've gained knowledge on the operation of macro assemblers and early microcomputer operating systems, and have developed skills and techniques in implementing fast screen-drawing routines in MOS 6502 assembly language. I've also gained first-hand understanding of what can and can't be done with limited resources, and the dually encouraging and discouraging knowledge that the difference between code that gets the job done, and code that gets the job done, buys you a couple beers, and drives you home afterward is only about 8-24 hours of concentration and meditation.

9BG:STA, TAY, INC alive?

Good lord in heaven. I've been eating, (not)sleeping, and breathing 6502 code for the past few days, and you know what? I still suck at it.

I gave up on WUDSN/Eclipse. Way too fat for my taste. Instead, I grabbed a copy of ConTEXT, along with the 6502 ASM highlighter that Aaron Curtis provided, and I wrote a couple batch files for launching ATasm and an emulator. Where Eclipse was a 60MB download, ConTEXT was... under 2MB, I think. And it launches in about 1 second. That seems slightly more reasonable to me when I'm working on code for a 30-year-old computer with a few dozen kilobytes of memory. Oh, wait; the term is kibibytes these days, isn't it?Silly me.

So how's the program coming? Gah! Y'know, there are just some things that are hard to do fast when you've only got a million or two CPU cycles per second. The good news is that you can write a nice, tight loop that will insert characters and redimension a text buffer at about 44,000 bytes/sec. The bad news is that you can only write a nice, tight loop that will blit 16x8 pixel bitmaps to the screen at about 1000 characters per second.

Oh, shit!

As I was writing that sentence, I just thought of a great way to speed things up. Man, I love when that happens. I already doubled the speed of character drawing over the past couple days, but it's got to be faster. It might just get faster tonight. Hoorah.

 - - -

If my memory serves me well (that's a laugh), I've owned (or at least controlled) the domain Apocalyptek.com for about ten years now. I'm considering letting it go this month. When I was 19 and I came up with the Apocalyptek name, I thought it was cool as all heck. Now, after years of trying to inject meaning into an essentially meaningless, cool-sounding name (meaningless? Never! Apocalyp-, apokalypsis: revelation | Tek-, techne: art,skill || the art that reveals, or of revealing; apocalyptek), I think I've just stopped caring. The site's never brought me any traffic, not that I had great hopes for it doing so, but if you're going to hang on to a vanity domain, it may as well be something that you actually feel is representative of you, or what you want your perceived identity to be, or ... something like that. Apocalyptek is, at this stage, a lousy title for a graphic novel project that I'll probably never get off the ground, and the name of a website which gets flagged by Google every six months as a source of malicious code. It's the return-address domain of a few hundred spam e-mails every month, and a perpetual pain in my ass. The sad thing is, the only reason I'm considering keeping it at this point is because I use my @apocalyptek.com email address as my primary.

 - - -
Somebody was going to throw away a perfectly good ten-year-old.

TV. It was a ten-year-old TV. A nice one. An FD Trinitron. It's mine now, because unlike the rest of you fucking heathens, I have a great love of tube televisions. Yeah, yeah -- you can go to Best Buy and get your flashy new flat-screen garbage and impress your friends by watching the Ultimate Matrix Collection on Blu-Ray or something, while I'll be sitting here, bathing in the warm, phosphorescent, 15Khz glow of a real TV, confident in my belief that 480 lines...

...are enough.

9B9: Proportionally Awesome

I astound myself with my ability to invest twelve hours of labor per day in projects which I will never be paid for, whilst paying projects lay idle and whimpering amid stacks of mental detritus.

Picking-up where the meat of 9AJ left off, the screen-dump to the right is the first flickering of life from my most recent (entirely unnecessary) foray into Atari software development. I downloaded Eclipse the other night, so I could install the WUDSN IDE, which is very nice and gives syntax highlighting and easy integration to ATasm. I do have to make an effort not to be bothered by the fact that Eclipse (which, for my purposes, is really just a gussied-up text editor) reserves over 120MB of virtual memory on top of around 30MB of physical memory, and results in a lot of disk-thrashing when switching between apps, but I shouldn't complain because it beats the pants off of my previous Atari development workflow, which went like this:
  • write simplified, unlabeled assembly code in Notepad
  • using a printout of 6502 opcodes, hand-assemble the code into a list of decimal integers
  • manually input the integers into DATA statements in Atari BASIC
Yeah. I'm pretty hard-core, I know.

Anyway, as you can see, a small proportional font even on the Atari's meager 320-pixel-wide display can yield almost 80 characters per line. This is actually more than I was shooting for. I intentionally designed my character set to have an average glyph width of around five pixels with the hopes that I'd be getting ~60 characters per line, but I misjudged the abundance of spaces, Is, and punctuation in the average line of text. If I'd just copied Two Bit Gothic..., the situation would be even worse, probably something on the order of 100 characters per line. Too much.

I'm actually considering going a different route and using the Atari's "narrow playfield" mode, in which the display list processor only draws 256 pixels per line. One reason I'm considering this (less pixels? Sacrilege! I know...) is because it will skinny-up the display and get me closer to 60 characters -- but if all I cared about was the number of characters per line, I'd just redesign my font. The other reason I'm considering going the narrow playfield route is because I could do all my cursor positioning in 8-bits, and remove an awful lot of irritating 16-bit math from the code. This would also speed things up, and that's a major factor, since, as it stands, the program is pretty slow at drawing a full screen of text. Remember, I'm not using any of the machine's character-mode hardware, so it's raw CPU that's putting the text on the screen.

Anyway, it's barely a working program right now. There will likely be significant back-end changes before it's done -- and I'm probably going to find out that somebody else already wrote a really fast text editor for the Atari with proportional fonts in a couple of days, which will cause me to lose all interest in working on it and it'll never get done at all.


Another thing I mentioned in that same previous blog was a photo of Jerry Pournelle in front of a neato stack of boxes. Here's the photo, and I was right about the Televideo terminal. What it's sitting-on appears to be a CompuPro System 8/16, which was a pretty nice S-100 system, and I'd wager Mr. Pournelle was running M/PM on it, what with the two concurrent terminals, there. Some of the other stuff I still can't ID, but the CompuPro's disk drives are in the stack on the left.

9B6: Hartwerk

I started writing something here about my impressions of people who make a point of stating that they work hard (negative impressions, I'm afraid -- perhaps better left in the bit bucket). Half-way through, I seem to have hit some kind of limit on the amount of coffee and chocolate that a person can ingest while retaining the ability to form cogent thoughts. 'Twas either the stimulants that stopped me, or the repeated interruptions from my sister who, upon seeing a person typing at a computer, apparently gets the impression that they're just dying to have a conversation and proceeds to derail any train of thought they may have dared to embark upon.

Now, having erased all I wrote, and with a kind of wet sandstorm blowing through my brain, I'm left to reconsider the wisdom of having ever attempted to write something before 2:00am.

9B1:Diggin' me spurs into that ol' dead pony again...

Whenever conversation turns to the current comics industry, I usually get a little fired-up. The reason for this is that I loved comics as a kid, and I still get a great deal of pleasure from reading old comics as an adult -- but I feel completely alienated by an industry that, nowadays, seems dedicated to fleecing hard-core geeks out of their spare income, while completely ignoring the rest of the world.

It makes me furious that the only place I can buy a comic book (floppy, single-issue, not a trade) is a comic-book shop, but not because there aren't any around (while that has been the case for long periods of my life, I happen to have a comic shop about seven blocks away these days). The reason it ticks me off is this:

Viz's Shonen Jump handily out-sells the most successful monthly titles of either of the "big two", but it ain't because it's the best-written/best-drawn comic on the shelf. It's because when mom's in the deli picking out a package of pork chops, Billy is in the magazine aisle reading comics.  I guarantee you he'd be just as likely to have his nose in Spider-Man, or Justice League, but he's not reading either of those because they're simply not there.

It's pathetic that I'm even writing this, because every comics industry blog has been lamenting the current state of distribution and public exposure for years, but nothing changes. It boggles the mind why Marvel and DC zealously court the general public in the movie theater, but continue to ignore them in the supermarket and at the news-stand. I presume they're thinking "if they like the new movie, they'll be inclined to go into the comic shops and pick up some comics, right?" Wrong. Even if it did work that way, there's a slight problem: while there are about 70 movie theaters in Kansas, there are only about 15 comic book shops. Unfortunately, not every kid has a mother like mine; one who loved to drive and didn't mind going 75 miles to the nearest comics shop.

But let's be honest with ourselves. Marvel and DC don't want to waste their time on supermarkets and drug stores because they know that their product doesn't stand a chance in an environment where the shopper is looking for the best value. The reason they stick to the direct market is because the industry lives and breathes on the dollars of fanboys who don't mind shelling-out $3.99 for 24 pages of over-dark, over-printed art and 500 words of text. The other reason Shonen Jump does well is because when mom sees 200+ fat pages of comics, she thinks that $4.99 is a fair price for something that will keep Billy quiet for at least an hour.

Oh, and there's one more reason why Shonen Jump does better than the other monthlies: stability. For the magazine industry in general, about 50% of sales come from subscriptions, with the other half coming from the newsstand. Publishers love subscription sales because, even though the per-issue profit is less, it's money in the bank. Stable. Easy to budget with.  Shonen Jump, like any healthy magazine, also accounts for 50% of its sales through subscriptions, but there isn't a monthly comic book that comes anywhere near that. Why? Because comic books are unstable. Creative teams move around, story arcs start, end, and get preempted by crossovers, and titles get canceled. Why in the hell would I commit to a year of Green Lantern when the whole thing might go to shit in two months? This is the entire reason the anthology format is a good idea; because when you provide five good titles per month in the same package, if the reader sours on one or two of them, they're still getting three or four satisfying stories per issue, and are more likely to keep picking-up the mag.

But anthologies never sell, so I'm told.

I wonder why.