Hi! B 9 <[email protected]> wrote: > Sorry for not replying to this before, Eric. Gmail got confused and had > filed it as spam.
No worries, it happens to me all the time... I actually found the M100 list compilation email containing your reply in my spam folder too. > I ended up reinventing the wheel, but then this particular wheel has > probably been invented many times over and just never clearly > documented. I wonder if anyone has tried to update Anderson's > Programming Peeks, Pokes and Tips > <https://archive.org/details/ProgrammingTipsPeeksAndPokesForTheTandyPortableComputers> > since 1989. This technique definitely belongs in there. I originally did this because none of the commercial SGBD I tried on the M100 allowed more than 200 or 250 rows in a table... and I needed about 900. That book is really nice, even if some of the tricks could be improved (but that's easy to tell now, after 40 years of experimenting :o) ). I did learned a few things reading this though, so it's still a useful resource nowaday. >> Of course, you have to be careful because any misplaced poke may screw >> your whole filesystem, but if you have a REX for baking everything up >> before trying your code it's doable. > >Thanks for the advice. I already bake everything up. My worry is that I >could release a program that seems to work perfectly on my machine, but >blows up someone else's. It feels risky and dangerous to not have bounds >checking on POKEs. I guess, that's the thrill of running close to the >metal on these archaic beasts... Definitely, anyone trying those should have a backup, but on the other hand it's likely that the DB will take most of the 32KB of RAM so you really have to empty most of the M100 storage before you can test it (I'm using many REX banks because the tools to generate the DB, the tools to generate the indexes and the tool to query/edit the DB cannot fit at the same time in memory). > As for a REX, I had been trying to see how much I could do with "stock" > equipment, so I've been using Brian White's awesome dlplus I also was happy without a REX for a couple of years, but after getting one I couldn't do without it. As for using "stock" equipment, I also wanted this experience, that's why I had my M100 running for many hours to sort and generate the various index files instead of just using awk on a modern PC, where it would probably have taken about 30 seconds... But that's what is fun about using those classic old computers ;o) >> (it will probably work if you refetch this base address, but I didn't try >> it). > >It turns out, it doesn't work. I think I mentioned this before, but I found >that even just using EDIT moves the files and does NOT update the >addresses in the directory. So far, the only way in BASIC that I know to >update the directory is to call CLEAR. Thanks for the hint, that would save me a lot of time if I was trying to implement this :o) >>I may try finding some of my code if you want something to start from. > >I've finished, but I'd love to see your implementation. Perhaps I can >generalize something that will be useful to other people as a library of >sorts. All of my M100 have been out of order for the last couple of years (I know what's wrong but I cannot find the time to fix them :o( ). but I've found my backups and managed to make it run on Virtual T. Give me a few days to document the code and if you're OK with this I can email you a ZIP file at your gmail email address (I'd like to share my code on something like github at some point, but because I use a DB of... Pokemons (please don't judge me, my wife likes them ;o) ) I don't want to upset the big N company... By the way, if anyone knows of a freely available (and not copyrighted) DB of about 800 to 900 "items", I'd be happy to spend some time creating a M100 DB and document the whole process. Cheers, Eric
