AtariAge Forums: AtariAge Forums -> EricBall's Tech Projects

Jump to content

Subscribe to EricBall's Tech Projects        RSS Feed

expensive toys

Last year I bought my wife a MacBook, which she loves. One of the cool tools provided with OS X is Time Machine, which will automatically back up any changes to an external hard drive. She has an external USB hard drive for this which she connects about once a week, but you're only as safe as your most recent backup.

Apple also makes the Time Capsule, which is a WiFi router with a built in 1TB hard drive. With one of these, Time Machine would automatically back up her MacBook any time she's connected to the network. However, it has three problems: #1 it's a single drive so there's no protection from a hard disk failure; #2 I already have a WiFi router; #3 it's pricey - C$330.

What I really want is a NAS - Network Attached Storage, which I could use for backing up all of my PCs, sharing folders, and maybe as a media server. And although Apple doesn't officially support using Time Machine with a NAS other than Time Capsule, three NAS vendors...

Slippery slope

My son recently bought himself Pokemon Platinum so I retired the SNES & Gameboys which were only used to play Pokemon Blue. But those weren't the only SNES & Gameboy games we had. So I downloaded the entire GoodSNES collection via BitTorrent (dang that was easy, although I don't see the need for all of the bad dumps, hacks etc.) and put an SNES emulator on the Wii along with the ROMs for just the SNES titles I owned. I'll probably do the same for the Gameboy titles. And I'd like to get myself a DS flashcart so I can play them there too.

But I've put myself on a slipperly slope. Although I've only copied over the ROMs for which I own actual carts, I suspect I could get those same titles through the Wii's Virtual Arcade. So although the original carts are no longer available in a form which would provide revenue to the copyright holders, buying them via Virtual Arcade would.

Free is a hard temptation to ignore.

And no matter how I try to...

Propeller updates

So I posted my OnePinTVText driver. That's right, a text display on a TV using only 1 pin. Actually, there's no reason it can't do any other monochrome display with an 8x8 font. Anyone for a nice game of chess? Not much feedback yet. Sniff. I'd like to try to get it to work with the internal RC ~12MHz clock, but my first try didn't work. So I'll put that idea on the back burner for the moment.

My next project is to add SD support to my Z-machine interpretter so it can play the Infocom games. The first step is to wire up an SD socket. Unfortunately, no-one makes a pre-built adapter that I can just plug into my Demoboard. (There's one which is usable, but it still requires jumper wires.) So I started with a old 5.25 floppy edge connector (which apparently works). Unfortunately, the wires in the ribbon cable aren't stiff enough to push into the breadboard. So I've wirewrapped them to some wirewrap pins I have. I don't have any jumper...

My name is Eric and I'm a packrat

Yesterday I tidied up the corner of the basement where I store all my computer (and other tech) junk. I have no idea how I ended up with a dozen (or more) IEC power cords. I should keep enough of the best looking ones for the working PCs and monitors I currently have and toss the rest. Or figure out how to make them into a modern art exhibit and sell 'em to some gallery.

I also have a whack of serial cables which I'm trying to justify keeping. I don't think I have an external modem hiding anywhere - not that I have a big reason to use a modem anymore. I think I used them at one point to LapLink to an old PC to pull stuff off the harddrive. These days I'd just attach the harddrive to a USB adapter. So I guess I'll toss them as well - or add them to the modern art exhibit.

However, sometimes that old junk is usefull. Apparently an old 5.25 floppy drive cable can be used as an SD card socket.

CivRev

I have been playing Civilization since version 1 although I haven't played version IV or any of the version III expansions. Nor did I play on deity level. So I guess I'm not a hard-core Civ player.

But that's a good thing, 'cause Civilization Revolutions isn't for the hard-core Civ players. Unlike the rest of the Civ seies which added complexity with each version increase, Civ Rev tries to make the game more fun by removing complexity. This isn't to say the game is easy (although experienced Civ players shouldn't have much trouble) but I bet you won't be missing what was removed.

So, what has been removed? Terrain improvements to start with. No more micro-managing your settlers or engineers to irrigate, mine, road etc. Instead, terrain improvements are tied to building a city improvement. For example, building an iron mine automatically gets you the equivalent of a mine in any mountain squares. Roads are simply bought and provide only one step...

Z3.C - debugged

Attached File  z3c.zip (41.63K)
Number of downloads: 62
It works! I found the bug in the parsing routine (dumb error on my part). I'm going to call this chapter complete.

The next chapter is to create z3.spin based on this code. I/O will probably be based on a serial terminal interface. And it will run catseye.z3, which is small enough to fit in HUB RAM (hopefully), so no SD I/O. The objective is to do as little as possible other than porting the code from C to SPIN.

Z3 continues

Z3.C is functional, but I'm still bug hunting. It now gets to the first input in HitchHiker's, but doesn't grok the input. MiniZork starts, but misfires printing out the detailed location info. (Which probably means a bug is in the object/property/attribute code somewhere.)

What I really want is a PC trace from a known good interpretter, which I could then use to narrow down my bug hunt. Unfortunately, none of the Z-Machine interpretters I've found has this option. I could look at their source code, but I'm not sure that would be any easier. It would be one thing to look at something specific (like how to handle Jump if Equal with more than 2 operands), but working through every opcode would be much harder.

But I think I'm close. One idea I had last night is to compare what opcodes HitchHiker's and MiniZork use before the first input. Anything which isn't used can't be the problem.

Z3 compiler frustration

What do you think the following C should do?

unsigned byte zmem[128*1024];int read_word( int a, x ){  a = zmem[a++]<<8 + zmem[a];...}

There are three (!) errors in the above code:
  • precedence error : addition is done before shift
  • order of operations : is a incremented before the second array reference?
  • compiler bug : a contains a++ after the operation

All three can be worked around by using a temporary variable. Here's another gotcha I ran into:
int PC;void run( void ){...  op2code( op & 31, zmem[PC++], zmem[PC++] );...}

Looks reasonable, provide the next two bytes in the instruction stream as operands. Again, there are several potential bugs lurking:
  • is PC incremented before or after the function call (tested - it's before, at least with my compiler)
  • order of operations : which operand gets which byte?
  • is actually PC incremented before the second array reference?

#3 turned...

Z3

Zork! HitchHikers! Ahh, the memories of glowing green text and the frustration a text adventure can bring.

Interestingly, Infocom had the forsight to create their games as a program for a virtual computer. That way they didn't have to create separate versions of each for each home computer. The same game file could run on multiple home computers using the existing interpretters. And when a new home computer reached the market, the whole library of games would be available by just writing one interpretter.

My plan is to create a Z3 interpretter for the Propeller. (Although I'm skipping the features only used by two Z3 games.) No small feat given the Prop only has 32K of onboard RAM (plus 2K dedicated to each processor) while the Z3 story files can reach 128K. Obviously some kind of virtual memory will be required. The plan is to use standard SD cards to store the Z3 story files. When first started, the interpretter will copy the Z3 file to a SAV file and swap...

My free time is doomed!

This weekend my wife spotted Civilization Revolution for the PS3 at Walmart. She (and I) loved playing Civ (1,2&3) so she was immediately interested. I thought I remembered seeing a downloadable demo, but I couldn't find it. Silly me it's "Sid Meier's Civilization" so it's under S. Anyway, I downloaded it and starting playing Monday morning.

They are cruel. This ain't no demo, it's the first third of the game in all it's glory. More than enough to make me remember why I spent so many hours playing Civ. I originally skipped the demo because some of the early reviews implied it was "dumbed down" for the console. While I understand that a Civ4 purist might scoff at the simplifications; I, for one, won't mind not having to micromanage each citizen.

Unfortunately, you can't save your game in the demo. But I'm sure this coming weekend I'll be playing the full version.

  • (16 Pages)
  • +
  • 1
  • 2
  • 3
  • 4
  • 5
  • Last »

March 2010

S M T W T F S
 123456
78910111213
141516 17 181920
21222324252627
28293031   

Recent Entries

Recent Comments

Search My Blog