Jump to content
adamantyr

TI-99/4a disk-based CRPG

Recommended Posts

Argh... I've been doing some code work, and I hadn't looked at the program size in awhile.

 

Right now, it's just over 20k. I had intended the core program to take the upper 24k, leaving the lower 8k for buffers. Unfortunately, I can't see how I can fit all this into 4k:

 

  • Combat FX (Sprites, sounds, lots of complex stuff)
  • Battlemap position generation (ambush positions, map selection)
  • Monster AI
  • Effects management (battlefield conditions)
  • Transactions (quests, shopping, dialogue)
  • Specials (unique code paths for specific quest items or events)

 

So, I'm going to have to move my buffers over to the 8k RAM in the cartridge port, which means the game will require an 8K RAM cartridge.

 

Yeah, I don't like it either. But at this stage, I really don't want to start mass cutting features out to try and squeeze it in. I'd rather get it done, and then try to optimize later. Or design it to run with AMS.

 

Adamantyr

Share this post


Link to post
Share on other sites

I'm probably going to be lynched for saying this, but...

 

I would not worry about what people have or don't have. I'm going to go out on a limb and say the majority of people who will actually play the game will do so under emulation. Those who are going to play it on real hardware will have a means to run it too. I don't know why everyone is so worried about the handful of people out there who might expect to try this on an unexpanded console with only with a cassette deck. If everyone only writes programs for the lowest common denominator, we may as well all throw out our PEBs, hard drives, expansion systems, etc. and start working with dual cassette decks only.

 

Realistically, your target "market" is about 50 people max in the world, and half of those are probably on A.A., the other half are randomly bumping around in the ether.

 

IMO, do what you have to do to make a great game and/or the game *you* want to make. If it runs on your system, it will run on other people's systems. And if there is no software that forces people to upgrade or get new hardware, then they won't.

Edited by matthew180

Share this post


Link to post
Share on other sites

Where's the damn rope!

But seriously, I have to agree with you (reluctantly). I think our inclination to code for the lowest common denominator may be limiting the kind of projects we could do with the TI. I think the SAMS card is woefully underutilized, and so is the P-Code card, simply because not a lot of TIers have the needed hardware.

I like using real hardware for nostalgic reasons, even though practically speaking emulation is far better from an efficiency standpoint. I will definitely obtain an 8K cart somehow (buy one or build one) just so I can play Adam's game on the real thing, and I think I will not be alone in this. Maybe the old adage will hold true: if you code it, they will build the needed hardware :)

 

I'm probably going to be lynched for saying this, but...

 

I would not worry about what people have or don't have. I'm going to go out on a limb and say the majority of people who will actually play the game will do so under emulation. Those who are going to play it on real hardware will have a means to run it too. I don't know why everyone is so worried about the handful of people out there who might expect to try this on an unexpanded console with only with a cassette deck. If everyone only writes programs for the lowest common denominator, we may as well all throw out our PEBs, hard drives, expansion systems, etc. and start working with dual cassette decks only.

 

Realistically, your target "market" is about 50 people max in the world, and half of those are probably on A.A., the other half are randomly bumping around in the ether.

Share this post


Link to post
Share on other sites

Exactly. I think Mr. Gates himself said "software *makes* hardware", and even if you don't like Micro$oft, you can't argue with their success. Hardware is a much bigger deal for us to do now since it is hard to justify. You are forced to ask "if I make this, is there any software that will use it, or will anyone write software to take advantage of it?" But if the hardware does not exist, then no one will code for it. Kind of the chicken and egg problem. But with emulation we can provide the hardware, and if people start to take advantage of it, then some of us might make the real hardware. :-)

Share this post


Link to post
Share on other sites

Thanks guys. Fortunately, I do HAVE an 8k Supercart, so I can test it on my hardware. AMS, no... I wish the CF card drive system would support that.

 

The additional 8k should be sufficient for me to do everything I want to do.

 

Adamantyr

Share this post


Link to post
Share on other sites

Exactly. I think Mr. Gates himself said "software *makes* hardware", and even if you don't like Micro$oft, you can't argue with their success. Hardware is a much bigger deal for us to do now since it is hard to justify. You are forced to ask "if I make this, is there any software that will use it, or will anyone write software to take advantage of it?" But if the hardware does not exist, then no one will code for it. Kind of the chicken and egg problem. But with emulation we can provide the hardware, and if people start to take advantage of it, then some of us might make the real hardware. :-)

Tell me about it. I just built a brand new PC for my son so he can play Crysis 2, because his two year old laptop can't cut it anymore :x . This time around, I put in the best components I could lay my hands on (top shelf Alienware performance at half the cost. Thanks Newegg.com!), so maybe it will last him 3 years. Maybe...

Share this post


Link to post
Share on other sites

You are a good dad! When I was a kid, all I got was a $150 99/4A... ;-) Heh, new PC... bah. Give him a 99/4A and ToD cart, tell him he can have a new computer once he rescues the king from a 10 level dungeon on the hardest skill level. :-)

Share this post


Link to post
Share on other sites

 

The additional 8k should be sufficient for me to do everything I want to do.

 

Adamantyr

 

Famous last words ???? ;-)

 

So what is the projected date of release Adam ?

Share this post


Link to post
Share on other sites

You are a good dad! When I was a kid, all I got was a $150 99/4A... ;-) Heh, new PC... bah. Give him a 99/4A and ToD cart, tell him he can have a new computer once he rescues the king from a 10 level dungeon on the hardest skill level. :-)

Unfortunately, I was never able to get either of my two kids interested in the TI despite my best efforts... There was a brief time a long time ago (they are now 16 and 21) when they played Terry Turtle's adventure and Soundtrack Trolley on the MBX, but that did not last long :(

My son still makes fun of me when he sees me playing an old TI game, and he can't seem to get past the relatively primitive graphics. I really think kids these days are less imaginative than a generation or two ago when one's imagination filled in the gaps left by the blocky graphics (or even ASCII text). I guess who needs imagination when we can now recreate entire worlds in exacting detail on modern machines... It's a damn shame if you ask me :(

Share this post


Link to post
Share on other sites

So what is the projected date of release Adam ?

 

Projected release date? You think I'm THAT organized? :)

 

I can't really set an exact date until the core engine is complete. From that point on, it's content generation, which is a different beast but a bit easier to calculate. Probably no sooner than the end of this year.

 

Adamantyr

Share this post


Link to post
Share on other sites

So what is the projected date of release Adam ?

 

Projected release date? You think I'm THAT organized? :)

 

I can't really set an exact date until the core engine is complete. From that point on, it's content generation, which is a different beast but a bit easier to calculate. Probably no sooner than the end of this year.

 

Adamantyr

 

 

Just my 2 cents but.....

 

If you have to add hardware to get the beast to run you may consider the SAMS card. They are available brand new (as I am sure you know) and if you have to add hardware to get a finished project perhaps it would be better to add the max. Of course you would have to learn to use it which may throw a cog in the works. I have one that I have never used and could go on loan if your interested.

Share this post


Link to post
Share on other sites

Thanks guys. Fortunately, I do HAVE an 8k Supercart, so I can test it on my hardware. AMS, no... I wish the CF card drive system would support that.

 

The additional 8k should be sufficient for me to do everything I want to do.

 

Adamantyr

 

An 8K supercart is easier to build and/or procure than the AMS cards and as you mention, the CF system does not support AMS. That's not to tell you to avoid supporting the AMS just that the supercart is a simpler solution. Maybe you can keep AMS in mind and adjust your program to support either system if needed...? Or you could build your CRPG like Telco -- a module here, a module there. <grin>

Share this post


Link to post
Share on other sites

Thanks guys. Fortunately, I do HAVE an 8k Supercart, so I can test it on my hardware. AMS, no... I wish the CF card drive system would support that.

 

The additional 8k should be sufficient for me to do everything I want to do.

 

Adamantyr

 

An 8K supercart is easier to build and/or procure than the AMS cards and as you mention, the CF system does not support AMS. That's not to tell you to avoid supporting the AMS just that the supercart is a simpler solution. Maybe you can keep AMS in mind and adjust your program to support either system if needed...? Or you could build your CRPG like Telco -- a module here, a module there. <grin>

 

Trust me, I've tried to hook up the two guys who do the CF Card and the AMS... Joe Delekto and Jaime Maiilong. Unfortunately, I just haven't been able to make that fusion possible to get us the goods for us 99'ers. :)

 

I'm not too keen on getting an AMS. I know that there are guys putting them together, but I'm really not inclined to hook back up my PEB. For one thing, I'm pretty sure as old as it is, it's a potential fire hazard. It's also bulky, makes a lot of noise and heat, and I have no clean-cut method of transferring files to it like I do with the CF card.

 

Also, as far as more memory goes, I don't need a LOT more to finish the game, just a bit more. It looks like the SAVE utility takes up about 3k, which means I have about 9k of space left, if I use the 8k RAM in the cartridge for all my buffer spaces. (Anyone know a memory image creator that doesn't need the entire object file resident, so you could fill the entire 32k?)

 

I can do a complete optimization pass-through of the code as well and free up some more space here and there. (May post the code here for the assembly guru's to 'tsk tsk' over... "So that's how you're doing that, eh?")

 

Adamantyr

Share this post


Link to post
Share on other sites
Also, as far as more memory goes, I don't need a LOT more to finish the game, just a bit more. It looks like the SAVE utility takes up about 3k, which means I have about 9k of space left, if I use the 8k RAM in the cartridge for all my buffer spaces. (Anyone know a memory image creator that doesn't need the entire object file resident, so you could fill the entire 32k?)

 

Classic99 - the "memory save" facility was added for exactly this problem, and can create E/A#5 files. It can even throw in a block of VDP RAM at the end, taking it one step further than SAVE can do. ;)

 

It's a part of the debugger window. Load your program normally, setting a breakpoint at the beginning of it. When it breakpoints, select Make->Save Memory as Program. Select E/A#5 from the dropdown, and fill in the options as needed! If you defined SFIRST, SLAST and SLOAD (you do not have to!), use the 'Read Defs' button to try and pull them in automatically. Otherwise, select the ranges you want to save, set the start address, and click 'Build'.

 

post-12959-0-67358700-1306555778_thumb.jpg

 

Of the available options, E/A#5 can also use these:

-Include E/A utilities - will load the Editor/Assembler utilities (VMBW, etc) to load RAM in case you need those (this way games will run even without the E/A cart installed). This also makes sure the appropriate range in Low RAM is enabled to be saved.

-Load Character set - saves the VDP RAM containing the current character set as well. Note that even those the file is saved as a PROGRAM image normally, that the E/A loaders can't load it, since it doesn't go to CPU RAM. But it's a simple PROGRAM LOAD call to load it from your program.

Share this post


Link to post
Share on other sites

 

Classic99 - the "memory save" facility was added for exactly this problem, and can create E/A#5 files. It can even throw in a block of VDP RAM at the end, taking it one step further than SAVE can do. ;)

 

 

Ah, very nice. Works well! I don't need the VDP utilities, I wrote my own. :) But it's good to have the entire 32k at my disposal...

 

The FX logic is really kicking my head in right now, but I want to get it done so I have some visible effects on screen. Plus, it makes for good video. :) Speaking of that, do I have audio yet in Classic99 video recording?

 

Adamantyr

Share this post


Link to post
Share on other sites
The FX logic is really kicking my head in right now, but I want to get it done so I have some visible effects on screen. Plus, it makes for good video. :) Speaking of that, do I have audio yet in Classic99 video recording?

 

Sometimes. ;) Sometimes it even varies in the same video.

 

IOW, no, not working yet. I think I used the wrong API for video, but I put some notes in the code for further research. Also, the number of compressors that still support Classic99's ancient video mode are falling all the time, so I need to update the video system.

Share this post


Link to post
Share on other sites

Quick update... I had to reboot my blog.

 

At some point, I attempted to update to the latest version of Wordpress, only to find out that Yahoo's web services aren't supporting MySQL 5 yet, which is required for the latest version of WP. While fiddling around trying to update things, I accidentally installed PHPAdmin onto my blog.

 

I called Yahoo's tech support, but there wasn't much they could do without a backup. PHPAdmin apparently overwrites files and basically takes over. I finally got tired of not having control over things and just deactivated/re-activated the blog. So you'll probably notice, aside from the new appearance, the lack of posts. :)

 

I'll see if I can retrieve the archives, I made a full copy of everything on my server beforehand, but I expect it not to work... Regardless, none of it has anything to do with actually coding the CRPG, so I'm not that upset about it.

 

Adamantyr

Share this post


Link to post
Share on other sites

My blog is being updated regularly again... back on the horse, redesigning the CRPG's combat system. Finding a TON of bugs in the code on the way, small wonder it was crashing on me.

 

Adamantyr

Share this post


Link to post
Share on other sites

<snip> but I'm really not inclined to hook back up my PEB. For one thing, I'm pretty sure as old as it is, it's a potential fire hazard. It's also bulky, makes a lot of noise and heat, and I have no clean-cut method of transferring files to it like I do with the CF card.

<snip>

 

I haven't had a PEB hooked up in about 15 years or so. Never did care for them.

But I have, as many others, taken the card cage and backplane out of a couple and put them in tower cases which house both my TI & Geneve systems.

AND both have CF cards as hard drives, so I can plug them into a PC and transfer files in both directions using TIimagetool. You might want to consider

it.

 

Much better than that little board thingy with the CF that plugs into the side port. :)

 

Gazoo

Share this post


Link to post
Share on other sites

Great news! I really enjoy reading about the CRPG. Details about your debugging process (and perhaps code deltas to track progress) would be greatly appreciated!

Share this post


Link to post
Share on other sites

I don't know why everyone is so worried about the handful of people out there who might expect to try this on an unexpanded console with only with a cassette deck. If everyone only writes programs for the lowest common denominator, we may as well all throw out our PEBs, hard drives, expansion systems, etc. and start working with dual cassette decks only.

 

I have to agree... This is what helps push the limits of this system. I would also assume this also motivates hardware people like yourself to expand on your projects.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...