I’ve been busy making up for taking a long weekend off to go take pictures of birds, gather seashells, and get bitten by no-see-ums. I put in a lot of what I think of as the “minor commands” of TableMaster today — things like .INCREASE and .ERASE, commands that are pretty straightforward on the code end.
I’ve said for a long time that I think TableMaster is a mature product. The platforms it runs on will change, there will be minor changes in what certain commands do or how, etc., but the actual .TBL language is pretty much set in stone. Well, except for the two new keywords, anyway!
Continue reading “First new commands in 17+ years!”
It’s been a few days since my last post, and things have been going nicely.
The latest addition is the expression evaluator. I’ll be honest, I cribbed it from my old code. Looking at it, I realized that I’d done a remarkably good job of writing that (it didn’t hurt that it was one of the later things I added, so I was pretty good at Pascal by then!) and it made no sense to reinvent the wheel. I needed to make some changes to fit the modern TableMaster structure, of course, and a few minor tweaks to avoid variable and function name collisions, but aside from that I could pretty much graft it in there wholesale.
Continue reading “Status update (updated)”
People have been wondering how TableMaster II will be different from (i.e., better than) the original from 20 years ago. Aside from the obvious, like it not being an old DOS program that can’t be made to run on anything past Win98, what else is different?
My goal is to make it a superset of the original. That is, any table that worked with TableMaster will work with no changes with TableMaster II. The one exception to this is anything using .GRID — which is probably not going to be an issue, because that was always buggy and I don’t think anyone ever actually used it. If something using that does turn up and can’t be worked around, I can always put it back in the next iteration, but at this point .GRID isn’t going to be there.
I’ve already got some additions in. I mentioned the new formatting codes in an earlier post. Today, I added a new feature to the .NUMBER command.
Continue reading “Improvements, tweaks, and changes”
As I mentioned in my previous post, I’m going to be modernizing and enhancing the old table packs. Needing a break from staring at code last night (not least because it was late and I’d probably be putting in bugs instead of taking them out) I started playing with a table that’s going to go into one of the Fantasy Table Packs.
Y’know, it’s just plain fun to be writing tables again. I started this as a quick little test table with more interesting output than ‘this is a line,’ then decided to make it into something that could go in a table pack, then it just kind of grew. It’s 157 lines right now and will probably get bigger as I think of more things.
Continue reading “Fun With Tables”
I’m busy working on the handler for .otherwise in TableMaster, which is enough to drive anyone to talk about table packs instead! And it appears there are people who are curious what I’m going to be doing with them, and if there will be new ones.
I’ll answer the second question first, because that one’s easy: damn straight! I’ve already got a big list of notes for what I want to do for a brand-new table pack, and I’ve got at least preliminary notes for a possible second one.
Now, as for the old ones…
Continue reading “Table Packs”
I’ve been a bit busy for the past few days (tax time, among other things) but I’ve got some more of TableMaster together. This time, it’s all of the output formatting codes, plus a few new ones.
For those people who never met them, the output codes are one of the things that really set TM apart. They let you produce output that looks more like it had been written more by a human being and less like a bad mail merge program. I’ll explain…
Continue reading “Formatting codes are in”
It’s a wonderful feeling to look at TableMaster running for the first time since I upgraded from Win98. The output is stuffed with diagnostics, of course, but it’s TableMaster output, just like it should be.
Continue reading “It’s not only alive, it’s even usable!”
TableMaster II has run its first table!
Naturally, the output was “Hello world!” Along with a page full of diagnostics and assorted clutter, there it was: TableMaster II’s sign-on as a running (or at least crawling) program.
All it can do so far is print things (and not even randomly selected things) — but it can print things. It can read a table and print out what it finds there. In a very real sense, the hard part is over; all the rest is elaboration.
Continue reading “It’s Aliiiiiive!”
I’ve been working on TableMaster all day, so I took a quick break to play around with one of the old fonts for a bit. I decided to do a quickie conversion of it (given that I’m not sure if I ever even rebuilt it for Win95!) and put it up on the Wintertree Redux website free, as a little teaser for what the new font package will have some day.
The font in question is one I called InstaHex, for making your own hex paper of any size you want. It is, perhaps, not as useful as it once was — but then again, hex paper isn’t as common as it once was, either, so perhaps the ability to turn it out by the ream from your printer may be worthwhile after all.
Many B&W photocopiers won’t pick up pale blue (hence non-photo blue pencils). If you have a color printer, you could print out hex paper in a suitably pale shade of blue, draw your maps on it, and then run them through a copier to get just the map without the hex background.
It’s here, with some very basic usage instructions: InstaHex download & info page
Just to keep y’all updated on the status of TableMaster II: As of this morning, it now recognizes the .table directive and allocates table headers accordingly. While that doesn’t sound like much (what, the program is only just now dealing with the first bit of its data structures?) it’s a bigger deal than it might look, because that means I must — and I do — have all of that structure established and the whole framework laid out. A lot of the real skull sweat is done, and as soon as I get table lines being similarly stored, it’s much more straightforward from here on in. Not quite just turning the grind crank, but more of a matter of filling in the blanks than what it has been, which is deciding what and where the blanks should be.
It’s been a really weird feeling, doing all of this. Sometimes it’s almost like the past 16 years didn’t even exist. It’s weird, but it sure is fun.