I had a very productive 10 years with my Vic 20, but I never stopped loving to program it. I used the real thing until in 2002, when I found Xvic and spordically worked on a game that was the most complex ML project I had ever undertaken. Starting again from scratch in 2010 I started to gain more and more interest in this project until it's completion in 2013. Since then there has been a water shed of new projects that I am interested in. This is a document of my bi-polar mostly unintelligable process...
2012 and earlier
2015 & 2016
I'm pretty sure I won't be able to finish Dynasty before I leave for holidays, and the old ramble was long, so I will start a new one ...
<BY THE WAY THERE ARE SPOILERS IF YOU PLAN ON PLAYING ANY OF THE GAMES!>
4 Jan 2017
Well I am formulating a plan of attack for the computer move. I know the computer will cheat, but I still need to make that game playable. I will set up several levels of difficulty to play against. So my plan is on the easy level it will wait a fairly long time before generating a new city, it will raise land slowly (and just one level), the next level will be a shorter time before generating the cities, and it will raise land slightly faster. This difficulty will allow earthquake damage. The next 2 levels will be shorter spans between building cities and raising land, and the second most difficult will use the volcano damage and the last difficulty will use the tsunami damage. So if I have time today I hope I can do some testing to the last part and then start some of the code for the computer move. I think the most tedious part will be setting the timers to the right speed. Well started the testing part and I found 2 problems. One is after a while the powersquare stops assigning anything to a square, but I think I have an idea why. I will try something and see if it makes any difference. The second is even when I control all 27 squares I don't win. I guess I made a couple fo changes, I lowered the MAIN program 200 bytes, so when I was testing a second time I crashed it and had to start over. So it appears my power square routine isn't quite working, I'm not sure why but I can tell that is what is broken. I guess I need to test these sections more thoroughly, it took almost 4 hours to find, but at last I saw it was a column short, and everything after that was out. I need to continue testing this, before I can say it is working, but I think that did it. I added a little game over bit, but it's not waiting for the correct response. Weird. Anyway I am still testing and there are a few strange things that I can't explain. I think I need to continue testing before I move on. But I think it will have to wait till tomorrow.
5 Jan 2017
Testing more today. I may have found part of the problem for the assigning the power squares. It seems to be looking a block behind or assigning a block ahead. I still haven't found the varaibles that need to be reset for the local/world map at the start, I hope I can figure that out soon as well. Well I thought I solved both problems but it looks like I created a new one and found an old one. It is overwriting a variable right before the power map. HA! It was right in front of my face, I assigned a 1 to it when assigning variables and then right after I assigned a 0 to it! The other problem will take a while to track down, It is building your factory with the computers cities. LOL. First a quick break. I think I will try to use this 'flaw' to my advantage, so the computer can build factories as well. OK so I kinda think I have the factories working when a power station flipped (from computer to yours) and then the factory flipped too! This is kinda of what I want, but the power station was surrounded by computer cities, so it shouldn't have flipped yet. I guess I have to do something with that as well. Hmm. It's mostly working, it doesn't want to flip the factories anymore though. I may have found the culprit, but I now have to either blank both maps or load it again. Maybe I will add the map blanking to the game over bit. Well that didn't work at all, when I got to the end of the map it crashed. So I really want to move on and start the computer move, but I have to get all of these bugs out first or else they could get really difficult to track down. And a lot of this has been happening because it is such a large and inter-dependant program. I almost forgot! Last night as I was trying to sleep I was thinking about the gameplay and a map I had made forever ago. I also thought about a sequel that I had planned and I'm not sure if it's possible. So with all of this bubbling in my head, I thought I could add another option and that is to play different maps. I already have Mars ready, I would just have to make a couple more maps and then you could conquer other planets! Well running the game again the blanking the map is making things crash again. I'll run it again hopefully I can see what's happening. OK another laughable mistake, instead of putting zeros into the power map as I intended (@ 5550) I missed a 5 and put it into the end of the terrain map (@ 5500). And as I found out before the terrain map crashes on zeroes. Take another rest for my back. Looking at the code I had to make a fix to steal back cities. I hope it didn't mess anything else up. It works for the player so far, I'll add a computer city and see what happens. So it seems to be working for the player stealing the computer's city, the only way to test further is to create the computer move. So I think I have that coded, it is fairly long so it scares me to just try it, but I see no other choice. Three hours of debugging. I think I have it sort of working, but in this test I held all of the power squares but couldn't win, so more testing and debigging ahead. OK I actually have most of it working, BUT I will have to speed up the computer to make it challenging. Plus I still have to add some kind of damage stuff for the computer. So I think I managed to do quite a bit today, but I did have pretty much the whole day. That won't happen for the next four days, but hopefully I can do a bit in the next few days, I am very close! Just finish the computer move and then music and a title screen. After that I may have some map making ahead, but it won't be very hard.
6 Jan 2017
Because of yesterday's hard work I have a playable version of the game. Although it wouldn't be alot of fun, I still have to add a bit more before that happens. Another thing occurs to me, part of the fun is destroying things, maybe I should lower the amount of power it takes to create damage. Of course I talk about all the things I'm going to do when I have to go to work in a half hour. And a HUGE shout out to A. Jordison, this project would probably still be in the weeds if it wasn't for his assembler. Last night I played with the mars map until it crashed, it suffers from the same problem as the original map did, there are zeroes on the outside of the map and xvic tried to do the BASIC line chaining which seriously messes up my game. I think that was happening as far back as the mysterious problems with Exploria. Although I am not sure why the map starting with 30 zeroes didn't stop the re-chaining, it should have. Anyway I will just have to import the map and maybe some different music and change the map name from Earth to Mars, and a second map will be done. Anyway time for work.
7 Jan 2017
I know I won't have a lot of time today, so I looked to see what it would take to downsize the damage power requirements. The first thing I did was move the meter icons back a space, it was soemthing I wanted to do anyway becuase the change land icon really only takes 1 power. It didn't take much. Then I looked to see what I was subtracting from the power for damage, and actually it wasn't as high as I thought. I may still play with the numbers, but I will leave them for now. So the thing today will be the process of making the computer use damage and looking at the current timers for the computer build city routine. Also it seemed to stop raising land, and I should look into this. Also it needs to flatten areas that are taller. My thought is there will be 2 triggers for damage, one will be a counter, the other will be if the computer starts losing badly (by counting power squares). I should run a game and let the computer win to see what happens. So although I have rough code to work from, there is certainly room for improvement. And jumping back to the damage trigger, it shouldn't be too hard to convert back from a powersqare to map co-ordinates. Should I ever make a game like this again, I will have to make co-ordinating subroutines to convert between maps and the screen, as it seems like I just write a new one everytime I need it. Well another sample run has alerted me to a new problem, the computer's build city is ignoring a lower limit, and it looks like the x index is never updated. I will have to see if I can fix this. Yeah the x index is not reset, and it should be. I don't see why at the moment, and I have ran out of time. Back from work and it took about 40 minutes to find the problem, so now it should reset. Added a bit to lower land, and sped it up a bit, just for testing. It Didn't work but I am wondering if I need that anyway. I think I will take it out. While running a game I found another interesting problem, when you enter the edit screen the cursor turns all of the computer cities to yours. I think I just have to change the and number. The x index limit is working great, but I think it is hindering the computer too much. So for the higher difficulties I will increase the index. So I fixed the cursor problem and wanted to try with out the index and found another stupid mistake. The x limit was stopped at 28 and it should be 48! I would test it but it takes SO long.
8 Jan 2017
Pissed around all morning trying to remember how to transfer graphics. As you can probably tell I was unsuccessful. I was thinking I would try to get the title screen together, and thought I could just transfer the logo from a JPG. At this point it seems way more trouble that it is worth. I may just do what I did with the original Tau Ceti planet picture. I used the picture on Irfanview as a template and just entered the data by hand. After work I spent the next 3 hours coding then debugging the title page. I made so many amature errors I am embarressed. But finally I have a working title page. I will have to make a modification to the game over part to add in the tournament stuff, but I am getting closer! I will have to get back to the computer move stuff tomorrow. I will have to work on the damage stuff for the computer. Oh crap I forgot I have to change the computer X index limit in the title. I will add that in as well tomorrow. The other thing is I don't like the logo, it is too small. It can be almost a full character and a half higher and almost 2 characters wider. I will have to work on it later.
9 Jan 2017
There isn't much time before work, and I don't think I will be able to do much when I return. I would like to do even a small bit of something today. I was so tired last night I literally couldn't do any more. So maybe I will just fix the X index thing and see where that leaves me time wise. I thought I was done with the Title so I gave it a start address just below the main, and that will be what makes this a pain. I will have to add in the new code and move the whole section down, again. OK I just have to test it. And I am down to about 2K left! But all I have left to do is the triggers for computer damage, and a few little things like adding the tournament stuff into the game over part, maybe a way for the computer routine to use the current damage parts, and music! The cool thing about the music is I have 3 or 4 songs already set up in BASIC, so I just have to make a player for the DATA. I did all this way back when (1994?), so I may have to take a look at it to make sure it works. So in the little time I had I entered a table for music notes, fixed some things on the screen you will see when the game is loading, made the logo bigger and ready to transfer (somehow), removed the difficulty from the main routine (as it is now set in the title), added a jump out of game over for the tournament. I will still have to add some stuff to the Damage routine to accomodate the computer, and add some triggers in the computer move part. And as always more testing. Hmm a quick test is showing that my difficulty level isn't quite working yet. Nope just the timer wasn't reset, and now I must go.
10 Jan 2017
Kinda disappointing. I spent almost all day trying to get the graphics from the JPGS to the Vic. I finally did it though. It was alot of pissing around but I finally got the new logo in. It was a huge hassle and I'm not entirely sure it was worth it. I also (hopefully) got the graphics for the Loader title screen. Had a lot of problems with that too for 2 reasons. All black in a PPM is 0,0,0 which my program didn't like, not one bit. So I had to find a woraround for that. The other problem was a little more hidden and a lot more devious. I thought I had it down the the 5 colours I wanted on the screen, it turns out some of the black were off black and were causing problems becuase I had 6 or 7 coulours! It took a while to figure it out but I finally got it. Importing things into CBMPS isn't very easy either, at least for the assembler. So it is 11 and that is about all I got done today. I had hoped I would have more of the day to work on the program but it just wasn't to be. So I spent about an hour finishing up the tournament parts and a few other things. I added the jump to the computer damage trigger, but the code there right now is just RTS. Now to test these little bits. OK added a bit to the trigger as well, but the majority of that will have to wait for tomorrow.
11 Jan 2017
Depending on what get's done today, it will determine if I can finish before I leave or not. I suspect it is unlikely. I resized the logo again, I may try that later. What I should start is the final coding for the computer move. Thinking about the tigger code I realized there was a flaw in my logic and I will have to change the code somewhat. Then I think I will have to randomly choose a power square (that you own) and see if I can use the Damage routine to destroy it. Crap stuff keeps coming up, I can't seem to get anything done. I think I may have it coded, now to test it. I also thought I should program an explosion sound to let you know there was some kinda of damage. We'll see how that goes. OK it seems to be working, but it is hard to test with out letting it play for hours. At least the explosion is working for sure. I will have to play this later and observe, but for now I am just going to enter the music. I think even if I finish this before I leave (which could happen, maybe) I should delay the release till after I return so I can do some serious testing. Tedious. I added in the data for one song and coded a player but for some reason it isn't working. I can't see any reason for it to do so but it crashes right away. Something must have gotten corrupted when I was fixing stuff. So it's playing now, but it's not in sync. Not sure if I want to fight with this anymore. OK I had to adjust the starting numbers a bit to make it work. But I may not have room for the songs and honestly they are not really the right kind of song for this. I would also have to make my note index 2 bytes as the first song is already 174 bytes long. I think I need something slower, and I want it to fade in and out. It will have a bit more to the coding, but there will be fewer notes. I should be able to come up with something. So I am testing my new music, it works I juse need more. I also accidentally triggered the computer to damage me! So that works, partially. It seems the counter has stopped incrimenting. I will have to look into that. Hmm I thought I heard a damage sound but couldn't find where, then I just got another one and the graphics are corrupted. NOT GOOD! Plus the computer moves are still way too slow! So I am finished, but not really. There is a bit of music data to add, and now I have to fix the computer damage part, and speed up the computer move. But it is mostly fixing and tweaking. And it was actually kinda fun to play! Well except I think I have to tweak the power meter part. It seems like you never have any power. One thing I wish I would have done was copied the first song because it was working fine, I could have just imported it into something else, but it is gone and I will have to type in all the numbers again. Oh and I still have the resized logo. And one more thing, I have to write a loader for the tournament part. So definately not done, but almost. It is 12am so I suppose it is a good time to shut it down.
12 Jan 2017
While warming up my brain I made many small adjustments by limiting counters and adding one more. I created the loader and a few other small things. Hopefully I didn't mess anything up. The big problem remains and that is the computer damage. It will probably be difficult to track down, so I am not looking forward to it. So first I will test the new counters. So it all seems good but I think the computer move should still be faster, I will just have to adjust a couple of numbers. Also the music stop thing has to turn off the notes, I forgot about that. And I can't test the loader yet. The computer damage did an interesting (furstrating) thing and used a tsunami to flatten most of North America. So the random damage is working as the first damage was an earthquake. So I will just have to see why it is not staying in the map bounderies. Actually something occured to me just now. The power map is set up incrementing by y for 1 to 28. The terrain map is incrementing by x from 4126 to 5545, so the conversion from the power map to the terrain map was each power map y = 203 terrain map x. Except the second 'row' on the power map will now be out of the boundary. There is also another error as I thought I would limit the computer to mostly the left side of the power map, but it was flawed logic and this will take quite a bit of code to fix. On a different note I don't think I will use the new re-sized logo, the one that is ther is fine. I added a bit of data to the song, and I think I know how to fix the computer damage bit, but I have other things to take care of today, I will have to come back to this later. I must say though, I do feel good, the end of this project is near! Something I really wasn't sure I would get to back in 1994! OK still have things to do but I coded the fix for the computer damage and added to the music. So the good news is the computer damage is working great! The bad news is the music toggle doesn't work, and the computer move is still way too slow. Well I played it till the end and it crashed. I will try the easy mode just to see what's going on. Strangely it actually didn't crash, although it looked like it did. But I pressed F1 and the game started again. So I'm not sure what is happening, it seems like 36869 is being changed to a different page, but I don't see where. Oh my, I assigned the accumulator then assigned it again to serve the tournament mode. So I think that is fixed and I fixed the music toggle as well. I lowered the counter for the computer move as well. Found another problem, if the computer is winning it can't find a spot for the damage, so I fixed that. I wish I could tell if the computer was looping back to it's side of the map when finished. Hard to tell, but looking at the variables holding the current location it looks like it has looped. Well I know it needs more testing, and maybe a bit of fine tuning, but I removed the last of the testing code. I made a copy of the audio of the song. I even named it: Ocean of Tears. It is the longest vic song so far at 4m43s!! It is kinda of dirge-like but it suits the game better. I also put it all into one big file, although I am not too sure how I will put it onto casette because it saves the screen too. So mucho testing, insert the Mars map into 1 game, make 2 more maps, loaders and I'm done. I should come up with some different melodies for the other games and even one more for this game. There are 895 bytes left, a guy could do alot with that. Unless I run into same major problems with testing the code, I figure another 4 full days should do it. I was going to call it a night, but I didn't. I tried importing the Mars map, but xvic kept corrupting it. So I wrote a ML loader that saved to a P00, then imported that into CBMPS. I copied the whole program and made the few changes to make this one Mars. I played it for a while, then I thought I should make another map. So I decided to make Titan. It was easier now I knew how to do it, and this time it was the firs load. So now the data for that map is in CBMPS as well. But I have run out of time, holidays start ...
13 Jan 2017
I honestly thought I could do it, I thought I might be able to wrap it up today. I don't actually leave till this evening. But truely everything conspired against me, even the computer was running crappy and took an hour to update. I was able to put together some useful information for finalizing the game but I was unable to. I did get another song finished, it used alot of bytes so I out it into the Mars game, and called it Sky of Blood. But truthfully this does need way more testing. I have an idea something is still going outside the map boundary. I did hope I could get the loaders running, but it appears I haven't updated the boot loader for machine language. I looked at that and found I would need a start address, and it just went from there. I think I was able to get the title screen program together, but I haven't been able to test it. I will try right now. OK it took about 30 minutes but it is working. And now I must go.
22 Jan 2017
Holidays are over. ;( So today I tried to program the autoloader for ML. I only have one problem. The original program jumped back into the interrupt, and I don't want to. I'm not sure if this is the problem or if it is something else but I can't seem to get the AJ logo program to run. I have spent most of the day on this problem with no solution. So I will stop for now. I tried a few more things and decided I would come back to it. So I played on the mars map and found that the game was unwinable (yes that is a word, I said so). The computer is fast enough it usually has a few power blocks when the two city programs cross. So I will have to change something. I would like to make both programs a bit smarter, I'm sure I still have some space! The music toggle isn't working on the mars game also. I will have to check to see if it is working on the earth game, and then I know I will have to update the mars game as well. Yeah the music toggle isn't working, and something is overwriting the colours after the map again. I think I will have to do some investigating before I can go any further.
23 Jan 2017
I won't be able to do a whole lot today, but I think I need to make a list of things that I need to do. Usually as soon as everything works the game is done, but that won't be entirely true for this one. I will have to make sure the two city programs are balanced enough for a fun game. I will have to make the players routine a bit smarter, and the computers a bit faster and powerful. While the players city routine can run as fast as once every loop, there are things that will slow it down such as lack of power. It does seem to be overall faster than the computer routine, but not fast enough in the last quarter to conquer all of the power blocks for a win. There is a part of me that thinks this might be OK (as I have been running it on the hardest computer level) because you will have to be fairly interactive to win (by destroying computer cities with damages). I did play on the easy level and it was maybe too easy. I do think I need to give the computer a bit more speed or brute force. Aside from that there are some small errors I need to fix. So it is strange to have a working game but not a finished game, and it may take a while yet before I can call it finished. On the loader front I was doing some reading last night and there is no way around returning to the interrupt, even if it is just to exit. I will have to do some testing but maybe I can find where the program counters are on the stack and replace them. This of course is making my long loader much longer. I am very curious what I did for Tau Ceti and Cygnis as all of those loaders are supposedly ML as well, but maybe I did drop back to Basic long enough to start again. Well I was hoping to actually have some time this morning before I left but it is not to be. Actually another thing comes to mind, after the load, the progam it was running is gone, so that would be a problem as well. I ended up going through most of my old paper notes and learned a few interesting things. Surprizingly one of the things I was curious about was about setting up a phony RTI, and I had a dissembly of a bought game using the technique. I also learned that the way I sped up the music for Kerratias was by halving all of the note values. I also found out I had written some music for the Keys of Dengar, so I guess I will have to use it for something else. But nothing else got done today. I hope to work on the autoboot tomorrow and maybe some of the simpler fixes, like the song toggle. Maybe I can find out what is overwriting the colour variables as well.
24 Jan 2017
Working on the loader ATM. I am trying something very naughty, but it seems to work. I am NOT returning from the interupt. It is my thinking that the computer will lose a cycle of housekeeping, but it will eventually generate another one and all will be good with the world. In the meantime I have had some difficulties. Once I realized my JMP was being overwritten, I wasn't smart enough to remove the file name as well and it took a while to realize what was going on. So I moved a few instructions and my filename below the vectors in the area around 760, and this seems to be working until I load the AJ loader. I'm not sure why but it is crashing when it attepts to load the next program. So I will have to see if it is something I have forgotten to do before loading or just something I caused with my bad programming. Well it was my bad programming. I assigned the start of memory vector to the zero location but didn't assign anything to that location or the MSB for the autoboot, the AJ loader or the Splash loader. For the last 2 it was trying to load it in as a BASIC program, but all of the memory vectors are messed up (as I moved the screen but didn't bother to update them as I won't be using any BASIC). A bit of an aside, this will be the first program with absolutely NO BASIC. Although most of my programs lately have been in ML, I have been very lazy and have not updated the loaders till now. The old autoboot slips back into the entry mode and had a few keystrokes waiting in the keyboard buffer, it would process these and load the next program. The AJ loader was programmed in ML for the last several games but still used a BASIC stub to fire up. It looks like the splash page also had a BASIC stub as both programs were loaded as BASIC programs @ 4097. So I the loaders are done and ready. I have to take a bit of a break but next will be fixing some of those nasty little things. OK the music toggle works. Next I will have to see if I can find what is overwriting the map colours, but first a break. This is going to be trickier than I thought. I checked the things I thought were causing problems and after rigourous testing they just are not the culprits. I'm not exactly sure how I will find the problem. This will take some thinking. I have done a fair amount of tweaking, (although I could probably do more) but the colour overwriting issue eludes me. I think I am almost there with gameplay, but I wish I could find what is doing the overwriting. Well for sure it isn't in the game over part. My suspiscion is it is in the damage sub, but I can't seem to find it there either. Really stuck, but too tired to continue. A bit of progress today.
25 Jan 2017
As I was almost sleeping, I was thinking about my problem. The program is quite large and finding the offending code could take a very long time, but just sifting through each subroutine. So I did think by looking at the evidence I might be able to 'see' what the code is doing and therfore make a guess at which subroutine is causing the problem. The two locations that were being overwritten were holding 13 and 110 consecutively. They were then changed to 5 and 102. When resting I finally thought about what bits made up each number; 102 = 64+32+4+2. 5=4+1. Then I thought about the difference 110-102 equals 8! Bit 8 is the bit on the map that decides who owns the city. And during the last run I put a break in the main routine when memory location 5547 changes, and it stopped when the player city program was at the upper edge (which is 5545). So I am pretty certain I know what is the culprit. It will be in my x index LSB table hopefully. Another aside. I just finished reading Ray Kurzwielers book Spiritual Machines for the second time. I found it facinating the first time and was looking for a bit more insight the second time, especially now that there has been almost 20 years intervening. I could ramble about this subject for a very long time, but the reason I bring it up here is because Dynasty is using 2 (very very dumb) AI programs, or at the very least an extremely primitive version. One of the methods of AI is recursion, and basically both programs use that method of tenacity to 'populate' the planet. This is the slowest and dumbest method but given enough time they will find the answer. I think this is a very satisfying avenue of programming (also very frustrating) and think I should look into pursuing it further perhaps in another game. Well that line of reasoning didn't go far. It turns out the x index subroutine was never working, there is a RTS right at the beginning. I can see why as it really limits the expansion process, but I now have no scapegoat for my problem. Wait, I did think about something else. The BLDC program checks the current location and all 4 locations around it. when it is at the last column at location 5517 it will check right (location 5546) and possibly alter it! It is funny that it doesn't do more damage! Well I think that's got it. I see a couple of little other things I want to add, but I think I am almost done. So I added a quick jump to the world map update after a damage, I also added a screen flicker to explosion (so you really know something happened), and I added a character to the queue after a certain amount of work. The first two should be fine, the last I will just have to make sure it doesn't slow everything down too much. This could be the final version! Oh and I have to do some testing to the tournament mode, it seemed a bit wierd. Testing commences! Woah! that is way too often! Back to the drawing board. OK added yet another counter. Now everything looks good. I wish the flicker for the explosion was a bit slower, but I don't want to program any more timers. It would add about 20 bytes to the code for no real good reason. (Although I could just remove the x index limit part as it is never used. lol) Anyway the tounament part doesn't work, but I need to take a break, testing takes literally hours. I feel silly now. The tounament mode had some problems and I couldn't understand why. After lots of testing a curious bit 32 kept entering my variable, and it made no sence. That is until I finally REALLY looked at my code. Where I was trying to initialize the variable I had a LDX #0 and then STA 16383, so needless to say everything seems to work now. I think the Earth game is done. I have the maps for Mars and Titan done so I can copy and paste and those ones will also be done. I will just have to make a map for Venus. Oh and more music for Mars, and music for Venus and Titan. So the cassette for for first side is done! I put together the ML for both Mars and Titan, I just need to make music. I should try to make a new map for Venus, but I am tired, we'll see. OK Venus map is finished and the ML is ready. So all that is left is music.
26 Jan 2017
I got right to it this morning, and finished the song for Mars. I also did a quick little fix for the screen flashing that took only 3 bytes, but now I have to fix it in each of the four games. So Earth and Mars are done. I will have to resave the Earth game, but first I have many things to take care of, then more music. Well that kinda buggered everything! I saved a new version of the Earth game and when the screen is not initialized the load is mangled. Now I can't get anything to work. I am wondering if it is my lazy shortcut causing all of the problems, and yet it seemed to work before. WOW! that sucked. I spent all day looking for the problem and I found out it was xvic trying to do a BASIC re-chain again, messing up my ML. I am SO sick of this. Anyway it is saved again, but I found another couple problems. One is the music doesn't seem to be reset, the other is my tournament location is not cleared. So I will have to clear the tournament loaction in the splash page (and re-record that) then I will have to make sure the music stuff is being reset (and re-record that). Nope that hasn't fixed it either. OK It has worked once, let's see if it will work again. I must have had a bad save or something it all seems to be working now. It is disappointing that I wasted almost all day trying to get this to work. What a battle. Cassette one is finished. It is very difficult to get everything recorded right on the cassette. I made it especially tricky as the main game loads continuously from 4096 to 16382. I had to write a short program to save it and stick it out of the way. Venus is done! 12.14 am and Titan is done and on cassette! This was my biggest ML project yet, and it had to be something with automated city building. All I can say was that this was really hard, and I am glad it is finished. If I'm not too tired I am going to update some of my web pages and other files.
27 Jan 2017
Most of the web pages are updated. I haven't made a paypal button yet, or uploaded anything to the internets. But I got to cross out another game on the old master list. And I updated my next ten list. There are a few on this list that have been here since the beginning, and hopefully I can start to change that, soon. For now I plan on finishing a few things with Dynasty, like making a Disk. I will have to change the splash loader to load 1 of the 4 different maps. Other that that, change the 1 for cassette to an 8 for disk and easy-peasy. Oh I may have to make a new disk autoloader as well. Then I want to get Distractions on cassette as the ones I made don't work. I have two options here, I can go backwards from the working real world copies (get WAVs and turn them into TAPs) or just resave everything. The first option seems like the lesser of two evils, but I won't know till I get a chance to do it. I hope I can get some printer ink and get some real world copies of Dynasty today as well. Not sure that will happen either. Later I will start looking at Minimos or Bush Pilot. Anyway those are my plans, let's see what actually happens.
28 Jan 2017
Stayed up pissing around, trying to make a new catalogue. Had a terrible sleep and now off to work. But I did make a new catalogue, hopefully it is good enough to use as a template for future printing. I would like to do something, but doubt that I have time before work. paid way too much for colour ink and now find out I need black ink as well! I will compose a letter to Mr. Jordison with the things that don't really work (mostly disk stuff for the assembler).
29 Jan 2017
Must have been tired. I'm not even sure if that last entry makes any sence. Today I worked on the bit to choose which map for the disk loader. I am surprized at how slow it is, but I think I know why. I am using the Kernal GETIN, which I'm sure is fine, but the key repeat for the cursors is set, and that is the speed the characters will be input at. I now need to make a new disk autoloader. It probably wouldn't take much but I'm just not in the mood. I could then assemble the Dynasty disk, but it looks like that it just not going to happen.
30 Jan 2017
No time today and probably not tomorrow either, but occurs to me that I should have my autoboot program in CBMPS. It wouldn't take long and the reasons I use the program on the Vic are to calculate the addresses for the data automatically; those are taken care of by using lables. Mr. Jordison has replied to my requests and soon I will be able to build disks easily. Unfortunately there is no TAP support, but I do not wish to burden him with things that are probably only usable by me. I think I could use almost the same program for the Disk autoboot, just change all of the device numbers to 8's. Except I will have to actually put the program in at 828 rather than having it load in as a filename.
31 Jan 2017
I am hung over, so I thought I would do something simple. My disk autoloader was almost finished, so I thought I could do that. I added in the 2 numbers that I needed and saved it. Then I changed the AJ logo loader and saved that (although I have never checked it with the disk) and my disk splash loader that I made a few days ago. Well the auto boot crashes and the AJ loader crashes. LOL. I didn't even try the splash loader. I don't think I can do much else today. I don't think there is anything more simple to try. Well I was looking through Panik because it was really bugging me that it wasn't doing what it was supposed to do. I checked out a JSR and it was pointing to a wrong address and just RTSing. So I gave all of the JSRs lables and it might work now. So it still doesn't work, now it just crashes, but if I had a bit of time to test it I think I could get this going. Time for work.
1 Feb 2017
It's funny how, it seems, like everything always entails working on 2 or 3 other things to get the thing you are currently working on done. I decided I would see if I could figure out what was wrong with the disk auto loader, and loaded up my disk editor to see what was actually on the disk. Looking at it I found out I had miscalculated and my vector was out by one. Now IF my sector editor was working, I SHOULD have been able to change the 1 byte and test it. But I remembered that it wasn't quite right and would save an extra zero at the beginning of the sector pretty much ruining everything. SO I tried to fix this but still messed up my sector. I saved a new version of the sector editor anyway and I guess I will have to test it later. I decided that now the sector was totally ruined it would just be easier to run my autodisk loader program. So that took just a second to fix the number and save it again. Then I tested the autoloader and NO PROBLEMO! Except that the aj loader is still crashing, so now I will have to see if I can fix that. Hmm a wrong branch sent it to the catalogue load which for now (lazy me) is a jump to the cold start. Damn I forgot to change the load in the splash loader to disk. So I quickly saved all 4 maps on the disk although the tournament mode won't work as I have to change the tape load to a disk load. If I can find it and if my sector editor works it is only 1 number to change in each map. It might be easier to wait till Mr. Jordison fixes the append for the disk. But I think that's it for tonight.
2 Feb 2017
Well I think I am almost ready to move on. I will still have to fix the disk version, but it wouldn't take much, even if I did have to recomplile all 4 maps. There are a few things I could take care of, the new web pages still need to go up, and they need paypal buttons. I still want to get the Distraction cassettes done, I also see there are no disks for Distractions or Cygnis. I could work on my automated picture converter or more work on drawing lines. And then there are the new projects waiting in the queue, Panik and Bush Pilot. Like always lots of dreaming and no time, I have to go away for most of the day. In the end I decided to try to debug Panik when I returned. I have spent hours trying to get it to the almost working condition of the original file. I almost have it, I realized I should disable the reverse direction for now as it really isn't working, and just get it to go through the loop. Well it did a few times and then it crashed, not sure why. And I think I have run out of brain for this.
3 Feb 2017
Today I have a better idea of what I SHOULD do. Today I should get the TAPs for Distractions. I have looked at the bits that are there and it shouldnt' be hard, just time consuming. Plus there are a few things that need fixing. So I transferred the first tape to disk (so I can hopefully save everything in one pass) and I really was hoping I could speed up Adez & the Pirates of Ud. Looking at the BASIC the only way would be to convert the whole thing to ML. It is something worth considering, but I will leave it for now. Another thing to think about is to change single bytes (say in the loaders) I should be able to use the disk editor (also get rid of the quotation mark in Extra) and just save over the current program on tape. And if I come up with a different version of Adez, it is at the end of the cassette so it will be fine (although I think it would be tha same anyway as it is saved from 4097 to 7679). But the first cassette seems fine, I should be able to just save everything the way it is. OK tape 1 side a is done, just have to test it. Well the first and last programs work, hopefully the rest are OK. Now for side b. Side b done and sorta tested. Wierd all of the things I thought I needed to fix weren't broken. I wonder if I found an old version somehow. I wish I knew which one it was so I could stay away from it. But in the meantime I did finish fixing the disk editor. OK I guess I am ready to save side 2a. Its all saved, but Extra's ML portion is being a pain, and somewhere it is not right. I've saved it about 4 times and I think I need a break. OK so it verify's OK and it works with out the loader, so I may have to see if I need to do a CLR or something. Nope that's not it. Well fought with it most of the night and I just can't figure it out. It works by itself but not with the loader. What could the loader possibly do that makes it crash? Well further investigating I found that location 7679 should be 177 but becomes a 34. I will have to look into this tomorrow. Almost 3 sides.
4 Feb 2017
I wanted to stay away from this for a bit because I really wasn't sure if I could figure it out. I did think it had something to do with moving the memory vectors around, so in the end I opened the programs and checked and tested. I still don't know exactly why something is happening but I finally do see the cause. In the loader for all of the games at the beginning of the cassette (the Distraction loader), memory is lowered to page 24 for the large amount of graphics used by the loader. Becuase I was having problems with programs running out of memory, before loading, this program moves the memory limit back to page 30. When Extra's loader is ran, the memory is moved back to page 24 again, and then the ML portion is loaded and then the BASIC portion is loaded. With all of this flip-flopping obviously something bad is happening. So hopefully there is enough room in the Distractions loader to skip the memory fixing for ONLY the game Extra. OK I loaded the loader from disk and it worked, so hopefully I can just save the loader to tape and it will be fine. I just wonder if the 10 extra bytes will overwrite the next program the loader for Test Pattern. I guess I will have to try it and hope for the best. Otherwise I will be re-doing this cassette after work tonight. Well that seems to have done it, I will have to check a few other games just to make sure, then the final side. Alright, moving on. Well tick that off of the to do list. The last side transferred with only a couple of small problems. Widgets didn't save to disk becuase there is already a program called widgets on there, so I had to resave that and found out I missed a game. But no big problems. And funny enough both Widgets and Cowboys use ML in the same place (although now that I think of it there are differences) and work fine but I guess niether has ML running right onto the screen. Anyhoo that is done. NEXT! I have yet to make disk versions of this and Cygnis. AND I have to make a fix in Adez and the Keys of Dengar.
5 Feb 2017
Although not a critical component, I did finally upload and fix the internet files. I still need to make paypal buttons for the last three games, but maybe I should wait as 2 will have disk options. No time to do anything too much now. Maybe after work if my back isn't killing me, I will work on Panik or Adez and the Keys of Dengar. I know it is a stupid and little thing but I think from now on I will not put the instructions on the back of the o cards, that space could be put to better use. I will make a small instruction booklet, most will only be a single folded page. Not sure if I want to change all of the previous covers, I may, but probably not.
6 Feb 2017
Feel like crap, no sleep last night again. I opened Panik and watched it move the aliens 16 times before crashing. I guess I am going to have to debug this the old fashoined way. Or should I simply just redo the code? The more I think about it the more I think I should just start over. I printed out the BASIC portion of Adez and the keys of Dengar, and played it a bit. Yeah I have to do some fixing. Mostly pissed around today, not much time before work.
7 Feb 2017
As my usual tuesday, I am a bit hung over. But I was determined to get something accomplished. I quickly looked at the Adez and the Keys of Dengar, and saw something. There were 2 variables checked to see what character is under the player. One was checked for treasure and one was only checked to see if you hit an enemy. I knew I had to check both variables to see if you had hit an enemy, one was where you were going and one is where you had been. In between the ML moved the enemies and sometimes bad things would happen, because the enemies themselves did not check to see if they had hit you! So I had to do 6 more IF ... PEEK(x) ... THEN checks. In BASIC that is a lot, it seemed to me that it did slow the game down a bit. SO I quickly converted the 12 checks to ML and stuck it in at 675. I removed the 12 checks from BASIC and just had 2 POKES and 1 PEEK inbetween the SYS call. I did not recieve the speed up I had hoped for, but I suppose it didn't slow it down either. I also had to make one fix to the key sound, as it would lower the volume. So I saved the disk version, and now I just have to make a .TAP. These always take longer, but it shouldn't be too bad. Well shit. That didn't fix the problem. So I tried something else. Adez blinks alot but it works. All saved all done (I think). I should go get my truck. There I feel a bit better, Adez & the Keys of Dengar is officially fixed. Now I just have to upload the .ZIP file to the web page. Took all day, but I hated knowing it wasn't working properly. Although I am not sure when I think I will probably fix Betelgeuse at some point too. I may not go all ML, I guess it just depends on how ambitious I get. It's hard to say what might be easier a BASIC/ML hyrid ot just ML (because I do have a pretty good ML template in Tau Ceti). Anyway if I have time I will probably start working on Panik again today. But first I have to see if I can beat Skaak. If that was a question the answer is NO! A quick look at Panik and I think I will just start over. I will keep the opening splash page for now, and a few things like the graphics but the rest will have to go. For more than one reason, it will just make more sense. I did something smart though and looked up the notes. Maybe I will find something to at least help with the variables. Well it's not much of a help, anyway did some filing. Moved the new notes for Distractions and Adez and the Keys of Dengar into a folder. I moved the Dynasty notes out of the current binder, but I have no where to put them for now. I will have to do some testing in the tournament mode, I printed out the assembly and thought of some problems that may occur. I moved the notes for Panik and Minimos into the current binder, along with some copies of pages from my reference manual. It is falling apart, so I will try to retire it. I have an idea there are still things I will be grabbing it for. I'm a little disapointed I didn't get anything done for Panik, but hopefully tomorrow.
Working on Panik
8 Feb 2017
As today turns into tomorrow, I think I did good today. I put on my new copy of Emerson Lake and Powell, it kind of reminds me the TRON soundtrack, and went to work. So I kept about 225 bytes that makes to opening screen, and the graphics so far. I left enough room to make 40 aliens and as I found out from my notes this is supposed to be a 2 player game, so I added variables for player 2. As I have found out before, sometimes you have to go backward to go forward, but it is never an easy thing. I made a few little routines for printing and stuff then made a entry and setup routine. Then the real work began, I started on what I am calling my aliens1 routine which will move the first 16 aliens. It took a while as I kept building it and debugging it. But I think I am done for now, and the good news is I am further ahead than I was with the original program, and best of all IT WORKS! Pretty cool seeing the little cyan guys snaking down the screen for the first time. It doesn't look like much at the moment, but it is a good start, about 450 bytes.
9 Feb 2017
I copied aliens1 and modified it for aliens2 added a counter (just to test) and let it rip. Well there were a couple of unexpected things. I had removed the BASIC line because I thought 'why do I need that'? Then I remembered, it is my workaround for the xvic trying to re-chain stuff, so some wierd things happened, luckily nothing horrible. Then 2 different coloured strings of aliens came snaking down the screen. But in multiple trys the directions for some of aliens2 is not being reset. So I will need an aliens3 and 4, a bomb routine, the players routines, a routine to see if I need to reset the aliens 1 or 2, some player shooting, and some sounds. Easy-peasy right? OK just a couple of little mistakes, now fixed. But I should do some other RL things and get back to this later. Well I never did get around to doing anything, instead I programmed the bomb section. The Kamakazi section will be pretty much the same, and then enemy movement will be done. Kamakazi section done, but now I have all of it added together it is surprizingly slow (for a ML program). Tried the jiffy clock but it's not fast enough, trying to find a way to speed up the set bomb routine. Also started the player 1 routine, except for the shooting. OK I finally found something that works to speed up the bombs, and it works REAL good! Although there are a lot of little things, the firing will be the difficult one. Not sure I want to open that can of worms at this late hour, oh it's 12.05, definately not. But again great progress today, almost 1700 bytes.Oh and I have been thinking about a couple of other things. One is game number 5 is kinda clunky and is a similar style to Panik and another game on the list, so I think I will replace it. I think I know with what as well, I have a very old idea that never made it onto the list for some reason and yet there are graphics scribbled into an old binder. And there is yet another similar game at number 124, I am still half in and half out on that one so far. But I think there should be lots of time as I do want to concentrate on the lower numbered games for the time being.
10 Feb 2017
Yesterday I openend PRG studio first, today I am a bit less motivated. I did make a few small changes and looked to see where I would have to insert the code for checking if the alien was hit. Oh and I should add a bit for when player 1 or player 2 is dead. Just looking and plotting. It is so awesome that the code is easily re-arranged, with the old way I would have had to literally start over. So just working on the flow, the bad part is the lazer check. It may have to check all aliens to see which one it hit. Took all morning to code, and it looks like this is about as mich time as I can spend on it for now. Debugging is not going well anyway. Also I will have to use the values for xvic for the second joystick to test. Wow it took all day to find this stinking little problem, so the lazers for player one are firing. The next step is to see if they are hitting anything. It looks like it is sorta working then it crashes. Well found a big error, but I'll bet it's not the only one, more testing. Holy shit I think it's working!! I have to add in the score to the main loop and I'll know better. I should slow it down for now cause it is ridiculously fast. It seems my random JSR slows everything down too much, when I re-add the kamikazi guys I'll know for sure. Still testing, it was a good run and lasted for a while before crashing, so my best guess is there is still problem with the lazercheck1 routine. Well that was strange, it seems the PLOT kernal routine is not as predicable as I would like. It put the cursor in a funny place printed the score and then everything went south. I will try the longer but tried and true method. Hmm wierd. Something in the score routine is buggering everything up. The game works fine without it, although it seems a return to BASIC is always broken. Not sure if it is my zero page usage or something else. At any rate it seems I will have to translate the score myself, and that sounds very un-fun. Leaving the score thing for now, I added back the kamikazi guys and now it crashes, sometimes right away, sometimes not for 5 minutes, but it crashes. So which routine is it? Well just as a thought I removed the lazercheck routine and everything is fine even when RUN/STOP RESTORE is performed. I'm going to add the score back in, just to see, but I think I found my culprit. I see something else, now the kamikazi guys are back the bombs aren't working. I have an idea the RND spin messes with the clock, I will have to convert that routine to the clock as well. Nope that's not the problem either, somehow I broke it, but I am too tired to fix it tonight.
11 Feb 2017
It occurred to me that between setting an explosion and checking it the next cycle, everything has moved and the wrong aliens are being removed. It doesn't seem like this will fix my problem, but it is a problem that needs to be fixed. So I took the explosion check and added it to the 4 alien routines. Let's hope this works. Well I am back to where I was. It seems to remove the aliens, but it crashes on exit and there was a zero character on the screen @ 7682. Yeah there appears there is something in this routine that does bad stuff. Well testing and debugging all day, and I don't think I am any closer to an answer. If I remove the 2 bits of code that remove an alien when hit, everything is fine. But as soon as I put zero in there everything explodes, and I don't see why. I thought I was onto something, The aliens are removed in thier own routine AND in the lazer move routine. I removed the bit in the lazer move routine, and I thought that might fix stuff up, but it didn't. I guess I'm done fighting with it tonight.
12 Feb 2017
Back to testing. I removed everything except aliens1 and player and the lazermove routines. I slowed the xvic down to 20% to see what is happening and played till I got a score of 270. No problems. I will add in aliens2, because it's the same as aliens1, it shouldn't cause problems either. Well that IS wierd I am having problems when aliens2 is added. Ok with just aliens1 I played to a score of 718 which is 359 aliens, I'm 99% certain that routine is stable. So strange I have scoured the two routines and they are almost identicle. There are a couple of instructions that are reversed a bit and jumped over, the only other difference is aliens1 JSRs to the bombset routine and aliens2, for now, does not. Is it re-establishing a variable that I forgot? Or is there something wrong with my program that only affects things when I use different variables (862 vs 830 and 827 vs 911)? I just don't know. Just to see, I will add the kamikazi routine to see if there are any problems with that. That works, the only thing left to try is to add the bombset back into the aliens2 routine. But I will have to try that after work. Adding in the bombset routine did nothing, it still crashed. And yet it is ONLY aliens2 that causes problems. Played with everything except aliens2 till I had over 1400 points (I still haven't added the player dying part, lol) with no problems. It just makes no sense. Well maybe for now I need to move on, becuase everything else works fine. I guess I will add player 2's lazer, and some sound if I get that far. OK lazers done. So things left to do are: dead routine, game over routine, sound , solve aliens2 problem. I was hoping to get further but I am just too tired.
13 Feb 2017
Had absolutely no time before work today. So I have 2 possible ideas here. I can try the isolated aliens2 routine and check to see what is happening in each pass, and/or I can copy aliens1 (again) and change the few variables and branches and see if that works. But first I have something else I must take care of. I am testing the routine by itself and it seems to be when there are onl a few aliens left and it hits the right wall and it is supposed to add 23. I can't quite tell what's happening because it crashes, but it is something bad. Too tired to continue but I think I am close. I was just about to call it a night when I went over my print outs, and I'll be darned if I didn't find it. In the section that prints the aliens, there is a branch if the alien is dead and for some reason I moved the braches around a bit between aliens1 and aliens 2. Long story short, the branch was wrong and it tries to print a dead alien and that means it pokes around in zero page doing nothing good. I should check it but I am too tired.
14 Feb 2017
Mostly rested, I thought I should clarify my error. The reason it was working, at least to start, is it would start in the 30's and 40's and in zero page those are mostly BASIC vectors. The next line would be 62 to 82 which again is nothing too sacred to ML. But eventually it would get to 130 which is inside the CHRGET routine and crash. This may not have even been a problem if I wasn't using the CHRGET routine. It was also the reason things were getting wierd, for example it was no longer printing the score where it should be, but the TOP OF MEMORY was moved, so I guess that cause problems. Oh and another reason it was so camaflouged was, I was comparing the 2 routines ; aliens1 and aliens2, and for almost all branches I had just changed the letter (from g to h). Both braches used a similar lable G35 and H35, EXCEPT for some reason they branched to different locations!! One was after a JMP to the print routine and one (the bad one) was before! Anyway I am SO happy I found this, I will fix and test. Ah testing this is so much fun, because for now, there is no dying. But that will soon come to an end. Working on the dead routine I kinda have it working for player1, but now he won't shoot anymore. Got that working and a dying sound. Yay sound! OK now it won't differenciate between player1 and player2 dying. It's sorta working but I am out of time, hopefully I can get it working when I get back. So I just have to fix this, make an explosion sound when the aliens get hit, a game over part, and a kind of level up in aliens1set I think. I think every time you clear the first batch it will add more and get faster! Had about 10 minutes and have the dead routine mostly working. Found a few more minutes, so the dead routine is working. There is a problem I had been ignoring, after the first play the bombs stop dropping, not sure why. Ha I forgot to reset the bomb flag. Now just a couple of things left. The explosion sound, which might be a bit tricky, and the level up, and the end of the game over part. OK game over done. Games sure don't last long now. LOL. But I will have to resume this after work. Well I worked on leveling up but I'm afraid there are a bunch of problems to iron out. I don't think any of them are difficult, but it was a tough day at work and I think I should call it a night. Hopefully I should be able to finish this tomorrow.
15 Feb 2017
Working on Panik today, just trying to get the last little bits right. I keep speeding the game up, and fixed many of the problems in the new parts. There are a few holdouts, but I did get a funny error after running the game twice. FORMULA TOO COMPLEX? popped on the screen, so I moved my counters, as they may be messing up the math vectors. So most things are working right now. I added the explosion sound. A funny thing is the Game Over is printing in a funny place when there are 2 players. Oh and the lives are not erasing properly. I'm not entirely sure but I think I want it faster. Nice! They were simple fixes. I think I am done! I will do a bit more testing (because it's fun!) but I think that's it. It is at a fair speed to start, but I am not good enough to last till the kamikazi ships. I will have to cheat to see that. Well it was a fun game but short. I am quite happy with this!! So depending on how ambitious I get I could have a TAP later tonight. Although I will have to create a loader pic, everything else I will just have to copy and modify. The splash page was a bit of a pain. First I took my cover and started removing colours. There were a few moments where I wished I had one more colour to work with. Anyway I got it mostly in shape but I had to do quite a few touch ups for it to look right. I went from Photoshop to IrfanView then I had to get it onto the Vic. I still haven't made an automatic program yet so there is lots of trial and error. Then I saved a P00 of the character data from the vic and loaded it into CBMPS. This took a while as well, even though I had a template, because it is meant for a 48x128 picture, and I made a 64x128 picture. At first I had the data lower in memory and moved it, but it was just such a pain, I just put it where it belonged. There really isn't much of a memory or time saver by having it lower anyway. Alright now to make a TAP. Man am I stupid! First it took quite a few tries to get the splash page right, and that was frustrating enough, but then, the main program wouldn't load. After saving it about 25 times I realized I was LOADing it wrong. I was loading it like a BASIC program and it was saved from 4096, so there was an extra zero there and everything was off. So I have a working TAP of Panik!! I will have to change the bits for the actual vic (maybe I should do that now), and make a WAV. Oh yeah that's right I can't do it on this computer. Well I haven't made Dynasty cassettes yet either. So now for the kinda fun stuff. Update all of the binders and webpages. I would like to put the game on the internet right away, but I can't take pictures till probably tomorrow. Plus I wave to be up really early for work, it sucks but that's what it is. I will try to do a few things before bed, although my back is killing me.
16 Feb 2017
After work I re-printed and fixed the covers for both Panik and Dynasty. I have a couple of ideas about some possible things. I don't think I will do any of that today. I would like to attempt one more, probably Bush Pilot, but RL is starting to call again. While this hobby is awesome, and it does make me feel good to program, I tend to spend the majority of my day on the computer, and other things get sadly neglected. So it is difficult to say what, if anything will get done. I would also like to work on a picture converter, but that may be on the back burner. Maybe. Another thing I want to work on, is the lines program, to make it alot more flexible. Another thing I think, moving forward, is I don't think I will bother making a disk for everygame anymore. It's just too time consuming, especially when I have so many games on the list.
17 Feb 2017
This morning started out with a plan to do a second check to see if the aliens were hit in Panik. Sometimes it seemed as though the lazers were going through the aliens. It turns out there were some other flaws with the program. I tried to add a second check but it wasn't working so I tried a second way that did end up working. Along the way though I found out that the score was possibly being padded. When the lazers hit the score along the top they would trigger the bomb sound and add to the score. I wondered why there were (what I thought) random explosion sounds. Also the explosion wasn't turned off at the game end (how odd). So now I think I am good with this. I just have to fix the 2 TAPS, then I have to make a REAL version and try it on a REAL vic. Maybe I can even find a friend to play with. By the way so far my personal best is 537. I had a few better scores, but I guess I can't count them as there may have been points awarded for hitting the score. I have a few things to do then I will have to see if I can beat my score. Well I average around 450, but so far my best is 909! I can't wait to play this on a real vic. I hooked one up (it took hours to find all of the bits) but I am not sure if I have the right datasette. I tried to load Boogieman with no luck. Hopefully next week sometime I will have time to get that all settled and done. I am just looking at the page that I have some ideas scribbled on for the picture converter. The thing I was thinking was reducing the colours to 3 bits or even 2 bits, it would make things alot easier to deal with. And I will still have to reduce the colours with an outside program anyway, so i shouldn't have to worry about dithering or anything. Just converting colours. Of course the big problem will be trying to figure out how to use more than 4 colours at a time. I kinda have an idea, but it will require some work. So I looked at it, wrote down some more ideas and after about 2 hours, decided not today. I probably shouldn't have but I looked to see if I had started a project folder for Bush Pilot and I have. There were some graphics in there and about 10 assembly instructions. So I made a few more graphics and typed in a few more instructions and got this (see pic). It's not much but it's a start. I think I will have to make some clouds and maybe a sun, and then I will have to make the plane move.
Working on Bush Pilot
19 Feb 2017
Working hard at nothing sums up the last couple of days. I just wasn't in a programming mood, so last night I worked on a splash page for Bush Pilot. It required extensive editing to look right and to remove the colours I wanted. Once I had it converted and saved it, but when I went to import it into CBMPS there was nothing there. At that point it I had spent 3 hours on it, and it was late, so I went to bed. This morning I quickly finished the page. I'm sure it didn't even take 20 minutes. Probably not the order in which I should be working but it is done. I was even thinking maybe I should start the TAP, but maybe I will leave that for later tonight. I was hoping to code the simple ( so I thought) code for moving the plane minus one, but it just kept ballooning as I realized I would need this and to check this. So I mashed out about 500 bytes and of course it doesn't work. There is no time before work to debug this, so maybe later tonight.
20 Feb 2017
Too tired last night, and probably nothing tonight either. Work has been busy. But today I debugged the parts to make the plane go left and count screens so you eventually end up where you started. The take off routine also works. Turning will be quite an involved step (plus I will need more graphics) so I don't know if going right works yet, and I will have to reverse the take off routine for landing. I guess this will be the crux of the game. Mostly the player movement. Building screens shouldn't be too hard although a fire algorithm might be challenging. It's almost time for work so I guess that's it for now.
21 Feb 2017
Today's challenge was trying to get a real version of Panik. And a challenge it was, it took all day pissing around. One thing I found out was Windows Media Player isn't as good as Wavelab for playback. Who knew? And a puzzling thing is, although maybe I got my tape decks mixed up, the newer deck was supposed to work with a positive large wave at 9s360 and it only worked with a negative wave. I marked it on the cassette deck for future reference. Finally it loaded. An interesting thing is the xvics purple is very dark compared to the bright purple on a real vic. The splash page looked a bit funny because it looked quite diferent. But may be it's a good thing the purple bombs were a bit hard to see on the xvic. Not on a real vic! So after all of that I found out I had the player 2 directions backwards. If you pushed left on the joystick you will go right and if you push right you will go left. It's an easy fix but kinda disappointing to have to go through this whole process again. It is much easier to play on a real vic as well. I got a new high score of 1221! I thought I had some time so I started a quick reverse direction for now on Bush Pilot, just to test the other direction. I added a bit to print the room and opened a whole can of worms. I was using 22 to 29 to store variables and when I try to print numbers, well everything is messed up. So I had to move all of my variables. It was fairly painful especially when I realized I would have to move my timers as well. But now I can print numbers. By now I was quite tired, but checked and dubugged the other direction. I am barely thinking but wrote a bit for the landing and tested and debugged it as well. I will still have to add several things, but basic movement is coming along.
22 Feb 2017
One of the things I found when trying to convert panik, was that some games had not been updated. For example, I played Cygnis and at the end of the second adventure it returned to the command prompt. I'm sure I fixed this, and yet there it was. But also I don't have updated version of Adez and the keys of Dengar, Distractions, and now Panik. So I will probably head downstairs, convert them, and start the long process of recording them. I have more cassettes on the way (hopefully tomorrow), which is good because I went through alot trying to make things work. It is a shame really, as some of the cassettes were long, and I only wore out the first 3 minutes. Maybe I will see if they are worth salvaging. Oh so just in case you didn't realize I updated Panik. I had to make one other small fix because in the one player game it looked like it was killing player2. Another thing occured to me, I was going to make a fancy barrel roll for turning on bush pilot, I don't think I will bother with that. The player movement is already complicated enough, and I still have to do up and down movement. I spent almost all day in the cave trying to convert games to casettes. Why is it always such a painful process? It took all day but I think I am finally getting some actual cassettes. I still need to work on it a bit. But I did get Panik, Adez and the keys of Dengar, and the first side of Dynasty on cassette. It seems like a lot of effort for little return, but I guess that is the way of a Vic enthusiast. A sad thing is occuring, the vic I am currently using, I beleive is losing one of it's VIA chips. The keyboard will print the wrong letters and it makes it impossible to type things. Although it magincally worked properly when I tried Dynasty! I am working on bush pilot now, but just trying to get all the bugs out. Seems like I fix something then something else doesn't work. Just getting too tired.
23 Feb 2017
Often, I read what I did the day before to refresh my memory on what I needed to work on or fix. But I know last night when I stopped I barely knew what I was trying to do, never mind articulate it. So I guess I will have to see what the plane is doing before I try fixing anything. Hmm a good number of things are no longer working, where to start? I swear I am getting dumber as time goes on. Took a while to get all of the bugs out but player movement is working. Mostly reversed branches and stuff. I will take a break and then see what I think is the next step. I guess the next step is building fires. Not exactly sure how I am going to do that, but it is next. Actually worked on the dead routine and up to the game over part. So now I will have to build fires. OK that wasn't too bad, although it's not putting the random characters I wanted, it is putting the fire in the center and animating it. I will have to make a set fire routine in the level start, just random numbers for all of the rooms. Then I will have to add the shooting fireballs and birds so there is something to avoid. Then add the point, animals and people to save. So slowly getting it all together. Working on the fireball move and there are a couple of problems. For some reason, there are several fireballs that are left behind at the very bottom of the screen. I am not sure if they are being re-assigned or what is happening. The other is for some reason they are not disappearing at the limit (the top) of the screen. Not sure if I am ready to do much debugging ATM. After 2 documetaries I tried a bit of debugging and managed to fix the limit problem. I can't figure out why it won't erase the first row of fireballs, yet.
24 Feb 2017
It took most of the morning before work but I finally found the problem. Again it was a stupid mistake. A CMP instead of a CPX. At just under 1400 bytes most of the program is now working. The things I have left are assigning birds and movement. Limiting alot of this stuff at the beginning. Then assigning people and animals to save. Oh and a title screen. Busy the next few days, but hopefully I can get some of this done, there isn't alot left. Coded the birds stuff, but nothing is happening, and no time to test now. Maybe after work. Took about an hour to find the problems, but I now have the birds working. I noticed a bit of a bug on the page changing that I will have to fix, but I think I need to add in the people. People and animals are done. So now it is just picking them up and lots of little things. I think that is enough for tonight.
25 Feb 2017
Today I opened the program just to admire what I had done so far. It looks good, but there were some small things I needed to fix. I think I have all of that done now. All that is left is picking people up, level up and a title screen. I don't think any of this will be too difficult, but who knows? There are a couple of strange things happening. In one instance the whole lower screen was on fire. My guess is the width was 0 and the print routine 'wrapped around' to 0 again. I think I need to do some tweaking to the fire width anyway, nothing serious, just playing with the numbers a bit. I can see this game will be quite hard as well in later levels. Another thing that I forgot was to print the passengers on every new screen, and to figure out what happens with the passengers when your plane crashes. Well I have the passenger pickup and dropoff completed. All that is left is checking to see if the level is over, and making the levels easier/harder, and a title screen. But my back needs a break. Well there are five factors that will make the game harder: fire width, number of rooms, fireball frequency, number of birds, and overall speed. There are two that are not exacty straight forward, the fire width will be somewhat difficult to limit, and the fireball frequency may be tough to limit as well. I suck so bad at this it is hard to test! But it seems that for some reason it is not flagging the end of the level. OK just the level up part, maybe some sound (?) and a title screen. Working on the level up, needs some work but I have to go for a while. I'm back and everything seems to be working (maybe just a bit of fine tuning) except for the birds. After the first or second time it automatically puts 10 birds on the screen. I can't seem to find the problem. Well I am done! I was thinking I would make a TAP for it tonight but it is already really late. I may do some tinkering tomorrow while making the TAP, we'll see.
26 Feb 2017
Today's plan is to make a TAP and finish what ever loose ends need to be tied. OK done. I had hoped there would be time to update all the web pages and stuff, but I will have to attempt most of that after work. Maybe tomorrow I can make a physical tape! Oh and I still have to test my Dynasty tapes!
27 Feb 2017
Although I have abit of a plan I don't actually have to do anything today. My plan is to get pictures and upload Bush Pilot to the internet. If I have time I will try to make a physical cassette, and that is about it. I would like to get a nice picture of the game, but it starts out easy then it seems somewhere after 200 pts, I can't seem to get any farther. Maybe I will have to give myself a few more chances. Web stuff done, there's not enough time to make a cassette today. So I will just dream, what if I worked on one more? What game would I make? There are certainly lots of choices. On the next ten list there are at least 6 games that wouldn't be too involved. There are at least 2 that would require a lot of work, one would be just alot of maps and figuring out how to fit it into 8K, the other would require some cool animating and probably alot of programming. The goal in the next several years will be to finish some of the games that have been on the list since I made it, but 2 of them are the 2 difficult ones, so I hope to takle at least one each winter. The five at the top of the list are the 5 that were at the bottom of the original list, so there has been progress made. In fact, since I started really putting an effort into this, I have finished 11 games. It seems to be about 3 every second year, if only I could sneak one into the slow or dormant year, I might get some of these ideas out of my head before I die. Anyway if I keep this up this is a pretty good pace, and now with CBMPRGS the last 2 games have been finished in record time! Even Dynasty although it took a long time, it would have taken longer (or never been finished!) with out the assembler. Even though it has only been a short time using it, I'm not sure how I finished projects like Exporia and Tau Ceti without it! I do see one small change I want to make to Bush Pilot, but there is no rush. At any rate, if I continue programming into the spring, or not, this too, has been a good productive year.
28 Feb 2017
I didn't do much today. I made a small change to Bush Pilot, made a new TAP, then went downstairs and made a WAV and played it on a real VIC. It is harder now, which is fine. I also started dubbing a few other cassettes. Played a few games for a bit, a very nice relaxing day.
Working on Downunder
1 March 2017
Last night I found out that Panik's timers will actually wrap around and the game goes from silly fast to ridiculously slow. I had thought that the player would use up all 3 lives long before that, but with 2 players it can happen. So I will have to put a limit on the timers. I dubbed and played the other 2 sides of Dynasty, and Bush Pilot. Last night I was bored and made some graphics for what will become Downunder. I'm not sure I am going to pursue it but this morning I did write about 250 lines of code. Enough to print the cave and the player. I was debating on making the player in multi-colour, but for now I am just using 1 colour. I may make the cave narrower, I am just checking out the look, and it seems pretty good. I am thinking a bit about the game mechanic as well, just so I don't paint myself into a corner, as when I start I generally just go for it and think about stuff later or when I am in trouble. The most interesting thing for this game is that the player will not be 1 character big, something I probably need to get away from. I just kept going and have a scrolling routine and a main loop. I will have to re-do the scrolling routine though, because I forgot I will have to scroll the colour as well. But I need to do other things for a while. I quickly re-did the scroll routine, and added a fix to replace the stagmites. The scroll works fine the fix does not. Also the gun is pointing the wrong way and I can't see why, and that is all for another day.
2 March 2017
This morning before work I puttered around and fixed the 2 problems from last night. I then coded a bit to move the player around a bit and luckily it wasn't too hard to de-bug. So the player moves forward and backward and moves his gun. No shooting or jumping yet. But it is fun to watch the player run through the cave, and I can move him around a bit. He jumps now, but I think that is all I will do tonight. I am away for the weekend so I will probably not do anything till I get home.
3 March 2017
No time for any programming but I thought I could jot down a few things. I moved the cover page from the binder that holds such things to the binder that holds my current work. Because most of the work was done on PRG starter all I have are scribbles of temporary addresses, and numbers representing all aspects of game making. Panik had about 4 or 5 pages, Bush pilot had 3. I can't see Downunder having much more. The cover page is interesting, I'm not quite sure when I made it. Because it is on some tractor feed paper with a directory of my DISK B on it, I would have to guess late 90's, before I even knew of xVic. The funny thing to me is that I must have known I would have to program it in ML, because there it is, on the cover, language: ML. In my current binder is a cover and single page for a game in the queue called Minimos. Then in a separate section are my notes for the possible picture translation program (3 pages). 1 page for a game to be called Ghouly (much much later, this should get moved to the other binder). Then 5 pages for a game called Lands of Uth, which I have mentioned before and will hopefully be the next game on the next 10 list. After that are some pages I have copied out of my Programmer's Reference Guide, as the poor thing is falling apart. Unfortunately it seems I always need something from it that hasn't been copied yet. So I have been thinking ahead a bit. Should I finish Downunder, what do I want to try to tackle next? I have 10 choices. There are some I think will be fun (like lands of Uth) which may or may not be true. Then there are some I do not look forward to such as Sol:Survivor and Heart Attack. Those ones will just be difficult to turn into fun games, I have an overall concept for each one, just not the actual mechanics of how they will play. But both of those have been on the list since I made it, so they are priorties to finish. I think after careful consideration I would at least start Realm of Evil. This game is will be similar to Questron, and already have a map and the ML to print it finished. I think I had first imagined that I would use a hybrid of ML and BASIC to make the game, but that will no longer be the case. The real challenge for this game will be cramming all of the maps I have drawn into 8K. Even though I am less excited about a few of the other games, I know I will get interested when I get them started, just as I did for Bush Pilot, which turned into a pretty cool game. OK I have to go now.
7 March 2017
This is the most wicked storm we have had this year. I am glad I am home today, although I did have to go out and shovel a mountain of snow. I have had time to think about what I would like to attempt next, and I think it is the shooting. Because of the nature of your character, you won't be shooting straight. So I have planned an idea to take care of the lasers movements. There are the absolute locations holding the screen location of the 10 laser shots, and I knew I would need an extra location for direction. So the extra location will hold in byte 7 if it is travelling up or down (and I will get to use some BPL, BMI instructions!) and the lower 4 or 5 bytes will hold the x which will also point to a table showing when to go up or down a row. Now I just have to put it into motion. Wow that is a big chunk, I have to test it but I'm afraid. Well of course it doesn't work, it looks like it is going into an endless loop, but I need to take a break. Spent the rest of the day debugging, there is something I just can't find overwriting the screen, and then something that makes it crash. Hopefully I'll find it tomorrow.
8 March 2017
I opened PRG starter and xVic ready to tackle this mysterious bug. I was prepared to go through part by part, even if it took all morning. And just before I was aboput to start I noticed a LDA instead of a LDX which would reset a counter. I didn't think it would make much difference, but I re-built the assembly and all of the sudden my guy was running down a scrolling cave again. It was too good to be true so I pressed fire and there were lasers on the screen. I was quite surprized because it is a complicated routine using 5 succesive bytes to describe each laser blast. It is hard to tell if it is using all ten shots yet because the unfortunate part is, the scrolling. It makes the lasers actually go back wards. So I can try just adding 2 instead of 1 but I have an idea that may not work. I'll try it anyway. Oh and it doesn't fire up yet, but I think I forgot to add that to the fire button part. Nope that doesn't work. OK I have it erasing 1 behind and that works, but so far I only have a single shot and I haven't got the firing up working yet. More trouble shooting. Fixed the laser assign so all 10 shots are working, added the fire up to the fire routine, but the fire up isn't quite working. OK it was just a logic error, I was subtracting in the wrong order, yes it makes a difference. So it looks kinda wierd but it is firing in both directions. Now I have to decide if I want to lower the cave ceiling. I kinda think I will have to. MOAR KOFFEE! The lasers weren't erasing when you were moving forwards, but I had an idea that some of the shots were being re-assigned and after a quick look it was true, so I lengthened the shooting data a bit and we are back on track. So now to lower the cave. Alright that went OK. Still having some problems with lasers not erasing, but I will worry about that in a bit. My next dilemma is how to account for the enemies. I don't want to have an absolute address for each one, but I may have to. The problem is always detecting collisions. Because a collision is usually found in a subroutine I have to send a flag back to the main routine to deal with it. Such a pain. OK I guess I will have to set up a couple more assign subroutines for the 4 enemies. Started the stalactite part but there are 2 problems I forgot to check if it is below the bottom cave part, and also I used the timer and it isn't very random. Still no collision detection. Hmm used the random spin and it's still not very random. I realized that was my fault again, started working on the collision stuff but I am getting too tired. I think I am kinda getting tired of this project as well, I hope I can finish it, and get Realm of Evil ready for next year. I wanted to do something yet this evening so I made the splash page. I played with the picture maker ideas, and so far I can find the first 7 colours, the difficulty will be counting and weighing them, if I want to have more than 4 colours at the same time. But I have run out of steam for sure now.
9 March 2017
As I was waking this morning, the laser problem floated in my mind. It was soon apparent the problem was as the character was moving forward, the character under a latter shot was a previous shot and was getting 'put back' when the shots moved ahead, thus leaving a trail of abandoned laser characters. I will have to write a subroutine that will handle collisions and take care of abandoned lasers. It will be the equivilant to 20 or more IF...THEN comparisons, and I hate that. Plus, if I can, I will try to remove collided objects, which could be a bit tricky. I was working on putting parts of that in the laser and stalactite drop routines, but it isn't working. Because there are 4 enemies to check for (8 different characters), it would probably be better to do it in a routine. There I can also check for collisions with the player. The real unfortunate thing is I woke so late this moring there won't be any time to work on this. I must go and break my back shovelling again. Oh and I did have a few thoughts on my colour program. I currently scale each RGB element to 2 bits, I was wondering if I could just use 1 bit, and I think the answer is no. Unless I wish to use none of the AUX colours I need to have at least 2 bits. There will be several colours that will have to default to black, white and because I have no gray, light blue. Then it will be interesting (read difficult) to weigh the colours to see which are more important to keep. Because I plan (hope) that each character (4x8 grid) will be able to use it's own pallette (which on the vic is: screen colour, border colour, aux colour which are common to all characters and one colour that can be unique).
10 March 2017
Although no actual programming got done yesterday, there are a few ideas starting to build in my head as to how I will attempt the next parts of this program, and maybe the colour program as well. I did realize why 2 things that I thought would work aren't working, and when I get a chance to start on this next part I can try to overcome both problems. One was the laser problem I described in yesterdays rambling, the other was a part in the stalactite drop that would see a collision, remove the stalactite, and place an explosion character on the screen. The laser portion, in the next cycle, was supposed to 'see' the explosion remove the character from the screen, and remove the laser as well. Unfortunately I wasn't thinking very well and had the laser read the character stored that was underneath, instead of the actual character, and the explosions were never 'seen' by the laser program. When I got back from work i tried to do something, but there are some very strange things happening. What a mess and I am way too tired to fix any of this.
11 March 2017
Last night it wouldn't even print out the score, so I started to backtrack, and just couldn't figure it out. As usual it was a stupid mistake, but it took quite a while to find it. So now the score is working I can start debugging the collision routine. Only part of it is working, the player is dead flag works great. Unfortunately the lasers and stalactite collision isn't working, yet. For a while it seemed like for every fix there was a new problem. But I think I am starting to make progress, and one of the problems was my thinking again. The stalactites are stored as an index from 7900 and I don't have to worry about crossing a page because anything over an index of 154 is not valid, BUT when checking them against the lasers I turned it into an indirect absolute address and it DEFINATELY crosses a page within 2 passes of the routine. I have to test it more but it looks like it is working better. Now it is time for work.
12 March 2017
Tough day at work,so I only tested it today. Everything looks good, so I can move on. Not sure whether I want to do the next enemy or the dead routine next. I have an idea that I would like to incorperate, and that is a flashing player until you are ready to start. Shouldn't be too hard. I would also like to re-print the player but leave the explosion when they get killed. I guess with the enemies there are still several unknowns. Like how many on the screen and how many shots they should have on the screen as well. I need to have a number to go ahead with, because I'm pretty sure that once I start it may be tough to change. Had to do other things all day, so now I am attempting to do a bit of work. Although mostly cosmetic the game is starting to look better. Did a bit for the dead routine, still have to finish it yet. I had to look at my notes to see what the next enemy was. I guess in the bigger picture it isn't important, but it is important to me. I have been putting it off, but I guess I should start adding these other enemies. Oh but I think I have to make a fix to the stalactite drop. Hmm that was quite the change, I was just going to add a bit to make sure there was a stalactite there on the ceiling, as it was dropping from places that had already dropped, but also now there would be things that can't drop. Anyway I also decided I would have both stalactite characters fall and that turned ugly quick. Now to test. OK took a couple of little fixes, now I have to remove the dead routine for a bit, and start adding other enemies. OK I have the easy part of the next enemy. The nice thing is I can use it for the next enemy as well. But I am getting tired I will have to work on this again tomorrow.
13 March 2017
I started right away this morning, I tried to fix the check routine, but truthfully I think I made it worse. I then tried to work on the poddrop routine and I just can't make it work. I need some time away I guess, just having a morning where I can't get it right. WOW! This is taking a long time. I finally am making some progress, I have a pod moving up under some circumstances. Most of the day later, I have the routine working. I may have to change the randomness a bit, but it is working. Now to fix the check routine for the new items. So many little mistakes, I think I almost have everything working properly so far. I just have to add the dead routine back in to check (regretfully I'm sure it works), then I have another 2 enemies to add in. The slug thing I will have to scale back unfortunatley. Because I am moving everything a character at a time, the planned slug spit will have to move 2 spaces at a time to work and I just don't think that is practical. So I have the 2 enemies, the dead routine, the level up bit, title screen, and a few odds and ends. Although this has taken longer than I thought, I am getting close. In a whirlwind session I finished the 2 enemies, and all that is left is the dead routine, level up, some sound and the title screen. But I need to walk around for a bit. Well the level up stuff is working but there is still a problem with the lasers. I will try to fix it. I have most things cleaned up, but it was a close one. Something happened and everything was crashing and I couldn't figure out why. After a search and a lot of backtracking, I had found I had moved a bit of code and was accidentally blanking the players address. So I have a really bad laser sound, but the dead routine has stopped working. Again stupid me, so the dead routine is working. The sounds are not very good. I tried something different for the laser and it's better but still so far away. Still working away, making good progress, I am almost finished. But I think I will have to leave this for tomorrow. There is a whole lot of testing and I still have one sound, and I may play with the speed as the laser sound actually slows things down quite a bit. Well I actually solved a problem with the score being erased but I will leave the last sound for tomorrow. So very close.
14 March 2017
Its all over except for the crying. This morning I opened Downunder and created the last sound. I hated the laser sound and it was slowing everything down so I inserted it into the delay. I am much happier with that. And that's it. I changed the speed and tried bumping up the levels to test and it's good to go. So I will proceed with my rituals, starting with the big black line through #2 on the master list. I have to say it is wierd to accomplish something that you dreamed of when you were 13 or 14. Because it's not a big thing like climbing Mt. Everest it's not a huge deal, but it is a big deal in a way. Even with Boogieman, I had worked on it a bit in the 90's so I had a couple of decades to let it sink in. This had nothing before March, just some drawings on a paper that is over 30 years old. Also a big deal because it is 4 games again this year. I have to say Dynasty was a real mutherfucker. Thank goodness these others were much more straightforward. I do have a fair amount of other things to do, but I hope to get a real cassette version today. I will try to update all of the web pages, and I hope to get Realm of Evil onto CBMPS, as I think I am almost done for this year.
15 March 2017
I tried to have a mostly vic free day today, but I did end up making the cassette for Downunder today. In the evening I had some time so I started looking at Realm of Evil and putting it into CBMPS. It is starting to look like I will keep very little of the original, just because most of it is in BASIC. Especially now I have an assembler, I really don't plan on doing anything serious in BASIC anymore. I am moving the graphics over and the ML for the map. I will just have to steal much of the program from the BASIC I have already written. I actually had the little guy running around, but there is so much more to do. I had forgotten what the game looked like, it's pretty cool to see it, I'm sure I haven't opened these programs for a couple of decades. There is a later version without the border around the map, not sure which I like better yet, I guess I will have to decide soon. I also think I will keep the opening graphics, I had worked pretty hard on them and they do look quite good. I will just have to nestle it inside some new ML. I did start the regular conversion of the cover, but not sure if I will use it or not. Anyhow it is a start.
16 March 2017
Big day today. Finished updating yesterdays blog (too tired to write everything), and changed game number 16. It is something I had been think about for a while. I had notes and graphics for a game my sister had thought of when we were little, but for some reason it never got put into the main list. Now that I am kind of concentrating on the older game ideas, there are a few that just aren't strong enough. Idea number 8 is an example, it was a poor idea, and I just didn't think I could do anything with it. So another old idea, that I had actually started programming and for some reason was not included till MUCH later got moved up. The game Runner is at no. 8 now and is actually a good fit for the ideas of the time. This was done some time ago now, at this point there are no empty slots for games 1 to 128. I now just need time to program the remaining 90 games. LOL. So the long version of this is game number 16 was not very strong, and I had these notes and ideas, so game number 16 is now Blub: the adventures of a bubble! But it is a while off, I don't even think it will make it into the next 10 for a bit, the next candidates are (for sure!) all the games under 9 that are not already on the list (4,5,6,7,8). But that is what I did today, changed the main list and made a new cover. When I got home I played with the few things I had in CBMPS for Realm of Evil and I can almost print the map. It wouldn't take much to get this as far as I had it in BASIC, but it is very late now.
18 March 2017
One thing I forgot to talk about was that a few days ago Iwent through a bunch of my old notes and ended up moving a copious amount from a very old binder to one that is storing notes for any game that has notes and is not currently being worked on. I also found some more notes for Space Quest (Panik) and added them to the completed game notes. Finding them earlier wouldn't have changed anything as I didn't use much of the original program. It was funny finding these notes as several games have changed names since their inception. There are a few notes from things that I am not even pursuing anymore, like a baseball game. I am a bit unsure whether I should include them with the current incarnation of the game number or just leave them where they are for eternity. Anyway no time today again.
28 March 2017
I have been too busy to do anything concrete. Mostly just puttering with stupid things. Today I really wanted to program but I just have too much to do. I downloaded the new version of CBM Prg starter (3.10) and wanted to take it for a test drive, but just too much to do. I changed a couple of things in Realm of Evil before realizing I had to leave this for now. I did some important puttering later today. I got the 2018 catalogues ready, with some room for changes. I wrote 4 lines of code and fixed the screen (for when it is loading). Yep some heavy coding tonight. But at least the map prints now.
Working on Realm of Evil
30 March 2017
This morning I decided to do a bit of work to Realm. I tidied up a couple of things added a few variables and coded a small section to calculate the place the player is on the map and started the long section to print out the stats on the right side of the screen. Printing is cumbersome in ML and I just don't have time to finish, maybe after work.
31 March 2017
Have a killer headache but decided to program a bit anyway. I finished the print stats stuff and tested everything. It crashed so I found an error and it crashed again. Then I realized I hadn't loaded the map part into the casette buffer. DOH. So it prints the map and the stats. Next will be to get the joystick stuff in there and create a loop. But not now. Well it has been a difficult day, and unfortunately there is still alot to do, but those RL things can wait for another day. I decided to work on this, and in about an hour I completed the joystick routine. Looks like I have to either fix the map or fix the offset for map2. Next is to keep the player out of the ocean and add random monsters. Instead I started working on the castle, and found I out I had a problem with my map. After a long time I realized that the map was wrapping around and had to limit x by another 4 characters. After failing miserably at creating the data, I used the screen editor and I think it got everything pretty close. It's just my map is actually 4 more lines than the screen. There are other fixes needed, but that is it for now. Oh and I see why I need the border. I guess I will have to add that in. So the maps are already using over 1800 bytes, 2K for graphics and 655 for the program so far, which is about 4.5K. I may have to reign my game in a bit. It would be disappointing, but not surprizing. The notes I have for this adventure are pretty extensive considering I hadn't really programmed much, but they are mostly about how the adventure will progress. Anyhow done for today. Oh by the way it is official, I am working on this, I just added the header now. I may not finish it but I am working on it.
1 April 2017
Didn't have time to do much but after work I fixed the castle map, fixed the print map (to colour the new characters in the castle), and added the border .
2 April 2017
I have made a horrible discovery! By limiting the X movement, you cannot get to the whole map anymore! So I will either have to redesign 1 map, or change the print map to work with a wider map, or come up with a differnt scheme to move the player. Great thought is needed.
13 May 2017
I have been trying to get some RL stuff done, but it is mostly just pissing me off. So after watching netflix for about 5 hours I opened up Realm and edited the stupid map by removing 7 land tiles. There, problem fixed. If I decide to return to this, at least I can move on. Well Fack! I guess I have to edit map 2 as well. OK that's fixed now too. I almost wonder if I should have compressed the maps, but I guess it is too late now.
8 June 2017
Just looking through all of the stuff yet again. As usual I think I will have to go backwards to go forwards. I will probably have to code the character builder before I can go much further. The character will have to have some stats so he can fight the monsters. Those will be the next things I tackle when I eventually get back to this game: random monsters and entering towns, the castle, and crypts.
17 Aug 2017
I ordered a few things to make some 2nd joystick adapters. Although I am still waiting on some mini D sub ports, I got the project cases, and decided to drop my prototype into a box. It is ugly but I put it together. I guess I will have to spring for a Dremel kit soon. Then I wanted to test it. I tried loading Panik to no avail, I knew there were problems with this cassette, I guess I will have to fix this this winter. After about the 4th try I figured I would just try Blondie, but I had no luck there either. So I was pretty sure the memory location was 37136, so I just made a simple 1 line program to PEEK it. Everything seemed to work except down. I even tried using a wire to jumper between the wires to test it and I just couldn't get it to work. It never occured to me that the joystick was broken until I unhooked it, then my peek number changed. I plugged in a different joystick (one I knew worked) and then everything was working fine. Now I really have to make some more 2 player games! I'm also thinking about adding a port in the back to facilitate any other user port thingies, eventually. The weather has been so beautiful I doubt that I will be doing much till at the very earliest next month, but who knows.
20 Aug 2017
I was thinking about something. I have been very excited about the 2nd joystick adapter, but I don't have many games that support it. I was thinking I should make a cassette with 3 or 4 quick 2 player games, but I actually don't have any spots open in my list. So maybe I could bundle it with the adapter, it is a thought. It may or may not happen. Just like the posters, it is a good idea, I just haven't implimented it yet. I guess I'm just excited I actually have a prototype, and want a few games to use it with. It's kinda funny because I have actually had the connector for a long long time (at the very least I had it to test the game Blondie in 2000, but I'm sure I made it even before that so I could test a game from compute's gazzette. Which is where the plans come from.) But now that I have a box a for it and it looks all professional, now I am excited.
Working on 2 Joystick Games
22 Aug 2017
Yup this has gotten me all fired up. Today I decided to code a game called Badge. Basically an object will randomly appear and whoever gets it first wins that round and is awarded points. Pretty simple, but should be fun for 2 players. Oh yeah and after a bit little skulls will randomly pop on the screen and if you touch them you die. This game shouldn't be too hard. I programmed the 2joy loop, but I haven't tested it yet. That's where all the problems lie. But if I can get that debugged, then next step is random object, scoring, and random skulls. Oh I guess I still need to make some hi res characters. Anyway should be in and out. Of course I am going on holidays again in a couple of days. It always seems to be the way. I should test this, but I think I will drink beer. Well I couldn't resist and I tried it. As one would suspect there were several problems. The first being I hadn't created any new characters so I had no idea of what was happening. So I made some characters, and found out my variables would overwrite the program, so I fixed that. Then I tried again. At first I thought something was wrong as there were blank lines running through the new characters, Then I realized the vic was printing and erasing the characters so fast it was a strange flicker effect on the xvic. So for some reason joy1 and 2 are controlling the same character. Then my out of bounds routine isn't quite working, but I have my first crack at this not crashing. And that is good. So a quick look and I remember thinking I needed to change something else, I just copied joy2 portions for joy1 and forgot to update a couple of things. Now for the out of bounds compare. I may be a bit too tired to work that one out tonight. Nope too stubborn. I have it working, but that's it for now, for sure.
23 Aug 2017
Apparently programming sober was not enough of a challenge. I had some time to kill, but I had been drinking and thought I wondered if I can still program while inebriated? Well just so we're clear this is a fairly easy project. Anyway after I ran out of beer and switched to tequila, I programmed the items routine, and a bunch of other shit. And surprizingly fairly successfully. I still have a bunch of loose ends to tie up and I probably would have gotten farther if I was sober, but I did accomplish another big chunk of this game. I took a bit of a break and added lives and finally a delay (so it's playable). I still have to finish the dead routine, an end, and I think I have one other thing to fix. Oh and sound, it is pretty mute right now. OK 2 of 4 things finished. Well I am starting to get a headache now but the game is finished. I wish I could just pop this on a cassette, but it is never that easy. NEVER! That is the one thing that will be nessessary, testing it on a real vic with a real AJ & KJ 2nd joystick adapter ®!
24 Aug 2017
Didn't do much today. Made some characters for a game called Juggernaught. Poked the screen colour, and called it a day. To busy getting ready for my trip.
2 Sep 2017
I Shouldn't have but I did. Back from my trip, and I started working on Juggernaught. The actually displaying of the character was a long bit of programming, but I guess it is also a really good chunk of the game. Anyway I quickly bashed through that as I really wanted to see the character on the screen. So I finished that and I am pretty sure it works. So I just have to make a quick check routine, joystick handling, some screen stuff, and noises. Shouldn't be too difficult, I will post a pic after the next session.
3 Sep 2017
Did a little bit more, made a random block routine, some sounds, and a main loop. I will have to start the joystick reading stuff and figure out how I want to determine if the screen moves or the creature will move. But I am so tired I will stop here for now.
4 Sep 2017
Before work added a couple of very little things. After work too drunk.
6 Sep 2017
Typed in most of the code to move your juggernaught, but I am afraid to test it. Not sure how long I should pursue this tonight I have to be up very early tomorrow.
7 Sep 2017
Worked a bit more on Juggernaught. Tested what I have and although it's not crashing it's not working quite right. There are a few things I need to fix but I am just too tired tonight. I am a bit scared to commit to this project, it means I will be admitting summers over!
8 Sep 2017
Well I sure didn't want to but I started debugging Juggernaught. The first thing was for some reason it wasn't displaying the goal item. There was a LDA instead of a STA and I used ROR instead of LSR, so once I used the proper mnemonics that part was working. Now for the next part. It doesn't seem to recognise when the creature is set to move. More testing, but first some RL stuff. Lots of logic problems, a lot of tweaking. The juggernaught is moving! I'm not exactly sure if the 2 player joystick is reading properly, but I don't have a good way to test it. So next I have to check the scrolling routine and then I think I can start buttoning up. OK after a couple of little fixes the scroll works. Next to check if you land on a block or some food. Did a bit more but have to take a break. I ended up not doing much more as I am tired now, but I will have to debug the checking routine, add a counter and integrate the scrolling. Oh and maybe change joy2 so I can test it.
9 Sep 2017
Glad I decided to test the joy2 stuff, there were several things wrong. Nothing serious, I just had to re-assemble every time. So now the Juggernaught is moving, and it looks like it is seeing when it hits an obsticle. Need to test if it sees when it gets to the food. But too tired to comtinue tonight. Oh yeah happy Roland day!
11 Sep 2017
Feeling really blah, so instead of doing anything, I made the characters and a test screen for Escape. This game looks more involved than I really want, but I do want it to be fun. It will have 3 or 4 levels, depending on how lazy I am. It, like juggernaught will be a true co-op game. I have it set up with 2 scores and sets of men, but really if one character dies, the other cannot finish! Maybe I only need one score and one set of lives. Not sure why I can't get to finishing, I am very close. Well on my side ways journey I went downstairs and played a bit with the vic that is hooked up, (I had an unfinished Basic version of Badge, that I had already forgotten about!) and realized: I have to do some house keeping. I think I have to get an inventory on what I have and what is not working. For example I have 5 datasets and none of them work very well. I have my VFLI modded Vic that has stopped working as well. And just lots of stuff. Also I need to go through my casettes and see if any of them need to be updated. I am pretty sure that Panik needs to be updated, and I think there are more. And last but not least I need to update my disks. I have wanted a SD2IED for a while, maybe I need to get one soon so I can expidite some of these things.
12 Sep 2017
Truth is, I need a Dremel tool and a SD2IED, but can afford niether. At least not now. So I did more work on Juggernaught, although I am thinking I may have to change the name. I added a routine to print lives and score and stuff, and worked on the next level a bit, and also the scroll. I haven't debugged any of it yet, but I guess I have to. Well a quick test of the end level bit seems to work although I forgot to reset the start position of the bug. Just to try I checked the scrolling and it seems to work fine, so I just have to make sure the end of the scrolling bit is working, then back to a bit of programming. OK so this is almost working, I just realized I need to insert a couple of checks to keep the bug on the screen. Also I forgot the bug may need to move laterally when scrolling, it will be a bit of a pain in insert, but it's fine. I think I will create a pseudo x to keep track of lateral movement. Oh and I didn't increase the score. lol. That was a big fix, now to test it. Going right off of the screen works but going left off of the screen does not. Going left or right while scrolling doesn't work nor does going over the top edge of the screen. And now nothings working. Took a while to debug but I think I have all of this working now. I need to test it more but I think I am too tired now. Nope not working. I made it work because I wanted to have a new picture. Oh and by the way I changed the name to Buggaboo.
13 Sep 2017
If I am correct I beleive I have most of the game working now. I just have to finish the dying and game over routines, and I realized the game would get boring quickly so after a few levels stuff is going to start dropping. But I need to test it quite a bit more. Not sure what I want to do first. It is actually quite hard to play as one person. I'm glad I have the 2 co-op ideas for this project, as I'm sure almost all other future 2 player games will be 2 player vs. style. In the end I decided to finish the game over part. I guess I will test it a bit, because the dropping thing is going to be a bit more involved. Well I have some fixes before I move on. The colour isn't changing when the bug dies. The scroll flag seems to be zeroed after 1 pass, and I don't think it is reset after you die. But aside from it taking forever to test, it is definately taking shape. I think I have the scroll issues fixed but the colour thing is currently a mystery. OK fixed that, but more testing revealed that when scrolling the bug can still move off the screen on the left. Oh I see, I was missing a LDA, should be all fixed now. Well now to bugger it all up again. I want to add a moving block enemy, but I will have to erase it before it scrolls. OK I hesitantly entered the code for this. It wasn't as bad as I thought although I have yet to debug it. Not too bad, I think I have a working version of this game now, although there is much testing to do.
15 Sep 2017
Added a very little bit to the level construction of escape.
18 Sep 2017
Loaded a bunch of old disks. Pissed around with Korque 2 for a long time. Then finally started to work on Escape. I created a main loop shell and started the process of handling the 2 characters, but now my back is killing me I need a break. So after a break I qiockly cobbled together 3 routines to erase and print the players and get both joysticks. Luckily there were only a couple of things wrong. I got all of the directions backwards, and a wrong number for poking a colour. There may be a couple of other things, but for now the players are running around the screen. Next will be a humoungous checking routine or sorting out the levels. After I returned from the bar, my head was a bit too fuzzy to do much. I started the check routine, but it isn't working and I can't see why ATM. Oh well here's a shot of the screen.
19 Sep 2017
It's cold and raining and crappy outside, so I am doing this. I started doing the level set-up and the check parts simulateously because I need a bit of both to check if they are working. I have the first level set up, and working on the player 1 check (player 2 should be the same). The only thing that seems to be dogging me at the moment, is if you press down you will go through a solid block and fall and die. Not sure why this is happening but I have to get it fixed. My back does not like me sitting for this long though. Ok figured out that problem then typed in another huge part to have to switches control the moving patforms for level 1. Man I love platform games I cant wait to work on another cool one. OK here goes nothing. Yeah it's not working. I've tried to find the problem for about 2 hours and no luck, I guess I'll come back to this later.
23 Sep 2017
I couldn't even look at escape today. I made some fun graphics and may have started another game. Who knows if I'll even finish it. Then later opened Escape, and after another unsuccessful attempt to fix it, I closed it.
29 Sep 2017
I've been making a real push to finish alot of RL things. But as always I am running out of time. I am trying to get some cement work done, and once it starts to freeze, what's done is done. So I haven't even attempted to hunt down my bug for Escape yet (but I will). But I did have time to think, and that's bad, because it always makes more work for me. I started thinking about a definitive Lucas list. What would I like to work better. I have always thought that Adez and all the Kings Gold would be better if the ape moved faster, so that won't be too hard to do in ML, and should have a significant speed improvement. Shouldn't be too bad to make V2. Betelguese on the other hand, had a great concept, but BASIC just isn't cutting it. Not sure how long it would take to convert to ML, it's not like I could use a cookie cutter approach, because each game really is set up different. I remember one game had alot of rooms but not much for description. The number of rooms are what sort of dictates alot of the structure (at least that is the way I will be working) of the program. It would probably take a while, but I think it deserves it, a V2. Now while there are a whole bunch of games that could probably use some fixing, many times the problems outway the work required for the fix. I would put Exploria in that category, there are just a few little blemishes (like the elevator routine), that it would be nice to clean up. But I literally used the last free bytes! For any fixes I would have to scour the program to find code that was redundant and hope I would have enough room for the fixes. This is quite likely (as it was one of the last fully hand coded games) but might take me 6 months to complete. Not really worth it at this point. There are some games I actually don't mind in BASIC. Bopper, Speedboat, Springer, and even Warrior are fine the way they are (although maybe Springer 2 and 3 could use a bit of ML for levels 4 and 5!). Even Caudlron runs at an OK speed, so the last game on my Lucas list is: Tyrant I. I always thought this was a cool idea (although I had hoped I could have more than 1 level loaded at a time) but it is really slow. I even would like to attempt a sequel at some point, but I think the game needs a serious speed up. This one also would have to be started from the ground up and would take a fair amount of time, but the result should be quite great. And this will be Tyrant I V3! So when will I attempt this? Not sure. First on the list is finishing the 2 Joystick Collection, then either continue working on Realm of Evil or maybe start a small Lucas project. I guess we'll just have to see.
After work I decided to attack the problem in Escape. First there was an error that I really thought would make no difference, then slowly error by error, I almost got it to work. At first it just stopped a moving belt, and not the right one. Then I got it to flip the switch, but none of the belts stopped. I now have it flip the switch and stop a belt, not always the right one. But I am so friggin tired from work, I think I have done enough.
30 Sep 2017
Before work I decided to finish fixing the switch problem. The final fix was a couple of data that were reversed, and I fixed the subroutine that turns the moving platforms back on. So now I just have to add a key bit to the check routine, and a way for the switches to stop alternating each pass through the loop. The switches alternating will probably take a bit of thinking to make work but I am confident that if I have time after work tonight, I should be able to get this first level wrapped up. After work I was very tired but still added a bit for the key , fixed the alternating switches and tried to add something for the exit door. A quick test (and some more fixes) got me to the end when I realized the way I coded it you can never exit. A bit more code to fix that but I think I am done for tonight.
1 Oct 2017
After work I simplified the ending, and chased bugs until it worked. That's about all I feel up to at the moment. There are a few things to tidy up, like some sounds and something for the end. I think I should add a timer as well. Then I guess I can start the next level. Well stupid me. I created a new file and started building a new Tyrant program. While I know I will really like the outcome I just hate the pile of work ahead on this one. So basically I have the graphics and the data for the music. Part of me wants to start building the screen and another part just wants to go to sleep. I think the sleeping part is winning. I then programmed it to play the music and print out a title screen. Now sleep.
2 Oct 2017
Totally got sidetracked today. I spent most of the day creating the Tyrant 1 screen 1. sigh. So I finally went back to work on Escape. I have the timer working and a few sounds but already tired. Have to check my notes to see what's next. I started level 2, and I think I have the level drawn. Still have to finish the dead routine and a game over part. Slowly it is coming togother.
3 Oct 2017
Had some time later in the day. I decided to finish up the dead routine the end of level routine, and the game over routine. So I can play till the beginning of level 2. I realize that I have created a can of worms with this level (and probably the others) that the lazers are going to be a pain to make. I may just work on getting the switches to work. OK got the switches to work, and you can finish level 2 now, although there is no enemy yet. But for some odd reason the switches will not flip, I can't figure it out. I'll leave it for a bit. Didn't do much else to Escape, I did add a few things to Tyrant I. The first screen will be slightly different. So looking at screen 1 there won't be alot to do, it will be screen 2 and 3 with the spears and fireballs. Actually that won't be so bad either, I will just impliment it in a totally different way. That was one thing I was thinking while looking at the BASIC version to come up with a plan for the ML version. And that is to do a similar thing it is usually easier to program it completely different, if that makes any sense. Even though I feel like I should do more, I think I will stop here. Hopefully tomorrow I can figure out why the switches aren't flipping, and start on the lazer routines. And if I work on Tyrant I, it will be to start the main loop, I wonder how many screens I can fit in?
4 Oct 2017
After a long day I was just about to start the long and ardurous de-bugging process, when I realized what the problems was. The reason the switches weren't flipping in level 2 of Escape was something I had forgotten. The pxunder variable is loaded a second time in the print routine, so I had to actually save the value of the flipped switch to the screen for it to change. And as easy as that it now works. Now for the hard part, building the lazers. I decided to just get one moving first, took a bit of debugging, but it confirmed what I feared. The player Y that I created is not accurate. When the player moves onto something it can't, like pressing down on a block the Y is not updated when the player is moved back. Aside from that the lazer cannon follows well. I just have to solve my Y problem and then add the second cannon and then the lazer bolts. Well I am stuck on the Y problem and starting to fall asleep. I have a partial solution, but that obviously is not good enough. I do have another problem looming, and that is I am starting to wonder if I will have enough memory. Well I solved my Y problem. Tomorrow I will add the other cannon, start work on the lazer fire. OK I added the second cannon and added a counter to slow them down a bit. Weird having problems with CBMPS saving to disk. Found another problem, Oh solved already, I was returning if p1 was holding lazer0 and I needed to JMP to the lazer1 routine. OK I'm done for tonight. Hope I have enough room, less than 1000 bytes left!
5 Oct 2017
Well that wasn't so bad. I added a routine to add, and control the bazer bolts. Debugging was fairly straight forward and I think level 2 (or maybe three) is done. I did have to give up one thing, and that is the icons that stop the opposite lazer can be destroyed. It will also destroy switches, but I thought that could be fun, as long as I made sure the first one was still there. So if a lazer hits it it will turn red but it's still there. Now I'm not sure but I think the frankenstiens won't be too bad. I was thinking I could use an index number because they won't be moving far. I am quite tired so I'm not sure how far I will get. Well I have the level set up, but I think I will leave it there for the moment. I am having a hard time thinking, I don't think I am up for this. Slowly making progress.
6 Oct 2017
Finally 2 projects getting close to the end, my RL project is within less than 2 days to completion, and this silly game is also very close. I hammered out the code for controlling the frankenstiens and a added the code for controlling the switches as well. When compiling I actually was over the 7128 mark, but I removed an old bit of code that moved the graphics (because now they can just be where they are supposed to be) with a few bytes to spare. That means I have to button this game up in 300 bytes or less! I spent way more time on this one than I had anticipated. But I shouldn't be congratulating myself yet I still have to chase bugs in the new routines. Lol I think I have it working, but I don't know yet because I keep dying. I can only imagine what level 4 will be like! WOW! I finished level 3 and level 4 started, and I thought that there might be some problems, but it actually works great, as far as I can tell. It is so hard I don't think I will be able to complete it! I may have to make a quick cheat to make and test an ending! Well finally that's done. I have to decide if I am going to pursue the 5th game in this package or not. OR maybe Escape will be a stand-alone game (?). Yeah I think I will pursue this 5th game but I'll do it first as the last one won't be too hard. So this other game is called Island, and you will have to dodge stuff before you get to the Island and safety. Totally got side tracked, and got nothing done. So tired now but I started a main loop and have some scrolling happening. Next will be joystick and movement.
7 Oct 2017
I added the joystick movement stuff but something isn't working at all. I am using a psuedo X and Y to keep the players in bounds, but something wierd is happening. Its almost as if the X and Y were moving around or something, and now CBMPS won't build to a disk, and it's crashing! AARRRGG!
8 Oct 2017
Had a bit of time before work and figured out a workaround for the D64 problem in CBMPS. So I tried to solve my pseudo x and y problem. I got a partial solve by JMPing right after each joystick move (meaning there would be no diagonal moves and certain directions would take precidence). I was using DEC/INC or the reverse to reset the values if the player was out of bounds, but maybe I need to use actaul values and remove the JMPs. There is another odd behavior, when the player is on certain boundaries the other axis will not work. I will try a few more things, but i am running out of time before work. Getting closer but I have run out of time. This is not good, I had copied the jopystick routine from Escape, and changed what I needed to, but the whole routine is WRONG! and yet it works for Escape! So I finally have the joystick routine working. Next will be making random bits in the ocean. I had to go look for something and got sidetracked again. I was looking at old programs in CBMPS. It is so funny, even though I haven't been using CBMPS for very long I can't imagine having to code without it now. I am getting a bit better at using it's functionallity as well, which makes it indispensible. I looked at everything that I have done on CBMPS and am amazed that I was able to finish Tau Ceti, because all 12K bytes were programmed by hand! I think I had tried with little success to use it to get the Cowboys ML for Distractions to work, so the first real attempt was Cygnis. And I haven't looked back! Well I'm afriad I've kinda wasted this evening. But I did get a couple of small things done.
9 Oct 2017
I have a small block of time, so I quickly coded some waves and some random-ish things to dodge. I see a bit of a problem with my scroll routine. There are 2 and a half lines that are not scrolling. I have an idea I just typed in wrong numbers, I'll take a look. Yeah it was actually just one line that screwed everything up. OK next : check what the players are on. OK did a quick little thing to show the level name and tried to fix the check routine. it's not quite working. OK got that going and almost everything upto the dead flag (which is almost a game). Crap I have to rewrite my bit for print out the men left, but I think I almost have a game. OK kinda drunk but I debugged the game so far and all that is left is game over, boss part and level up. I don't think I can continue, so here's a pic.
10 Oct 2017
UG. I am ugly hungover today, but I did manage to solve the few remaining problems for the game so far. If my head was clearer I would probably start on the boss part of the game. As the day wore on I slowly added to the program, and debugged all of the little problems that popped up. I finished the level up and boss parts. All that is left is the game over part and that should be fairly quick. Well I think I am done. SO only 1 more game to finish. Even though I was feeling kinda tough it was a good day. Although I should probably start setting up Atomic Tennis I almost think I might work a bit more on Tyrant I. But my back is killing me so a break first.
11 Oct 2017
Well this takes me way back. The first order of buisiness was making a ball bounce around the borders of th screen. Remember programming that in BASIC? Of course you do, everybody did it. So I have about 300 bytes of code and it almost works. Its only when it hits a corner and both axis are maxxed out. I understand the logic now but the way I have it programmed it may be hard to fix. As I only have 1 direction variable and when it hits a boundary it advances to the next direction. When it hits 2 boundaries it must advance 2 directions. I will have to think on this. Actually it is irrelevant, while it would be nice to see the ball continue around the screen, for this game as soon as x=0 or x=21 it is turn over. So I started getting the player stuff in order after work, but I am just too tired.
12 Oct 2017
Tackled bunch of RL things that had been put on the back burner. It was nice to not have anything scheduled for today, but I can't say I got a whole lot done. It was late by the time I got to the computer, but I fixed and finished the joystick routine. I modified the change directions for the ball and added a few nessessary variables for later. A big chunk of code will be when the ball makes contact with a paddle. I will start that tomorrow. I have temporarily pencilled in 2 cassettes for this project. 2 joystick collection a & b. I am not entirely sure about this, but if I continue I will have to make 1 more game, so as usual I have just made more work for me. I have an idea for one, but I'm not sure if I should think of something else. At any rate it is putting everything behind, because I was really hoping to finish Realm of Evil before Christmas, and I'm not so sure about that. Realm won't be difficult to program, it just has a large playfield. And all of the map making will be time consuming.
13 Oct 2017
Didn't have a busy day but was away from the computer for most of it. I was almost thinking I might not program tonight, but I guess I will open up CBMPS and see what happens. I think I have the basic bouncing, but it is hard for me to play both sides and to test. I'm not 100% sure but I think I have that working. Now to add the other features to make the ball a bit more unpredictable. OK I typed a bunch of shit in, I hope some of it works. Well some of it does work! A problem I noticed before is when the ball goes in the corners and both axis are maxed out. There is also a problem when Y is doubled and then hits a boundary, I will have to fix it but I think I am a bit too tired to continue. It actually looks like those are the only 2 issues. After those are fixed I just have to add some scoring, some sound, increase the speed, finish the dead and game over routines, and some plain text to show the score. Not much to look at but here is a pic.
14 Oct 2017
My brain must do alot of problem solving when I am half awake. When half awake I was thinking about the 2 problems, and I thought I might have solutions to both. It occurred to me that when the ball is in a corner the x value must be read first so that it would go into the dead routine and that would be that. Looking at the code it is already set up like that, so there must be a different problem. As for the other problem I realized it was a simple case of the augmented direction needing to be reversed. I programmed that and a few quick sounds. Now we will give it a go and see what happens. That was good stuff, exccept I am terrible at this game. So it appears my fix is working, it is just the corners. I think what is happening is it is deflecting the ball and before it gets checked to see if it is out of bounds it already is. This would probably be happening in my changedir routines and may require a fair bit of programming to fix. I may have to tackle this after work. Yeah just checking and that is exactly what's happening. I will have to figure this out later. Added the score, and more sound. After work I was testing the problem, when looking at the code the answer availed itself. And the solution was very simple. If the X value was reached it was checked first, and unfortunately left the subroutine never to return. So I changed some JMPs to JSRs and it works fine. I mean I really need to test it, but I will have to find a volunteer for that, because I find it really hard to play the game by myself, and unlike many of the games there is no easy way to set up a cheat. So I guess I will carry on, and have to test it later. Well I finished the score screen and pretty much everything. I thought I was done but yeah the ball is still disappearing off of the screen in the corner. I will have to do more testing, but I think that's it for tonight. I will have to get some inspiration for the last game.
15 Oct 2017
After work I thought I might try some coding but the truth is I'm not exactly sure what's going wrong. And I doubt that I can do much to figure it out at this point of the night. Well quickly I see 2 things. One is when the ball is on the lower boundary and player 1 deflects it with an augmented y it will cross the boundary until it gets to player 2 and then player 2 will lose a turn. Two is when the ball is on the lower boundary and it is deflected down ward it will cross the boundary. So now I have an idea what is going wrong I will see if I can come up with a fix. Nope I don't think so.
16 Oct 2017
Too drunk to think so I worked on Tyrant I for a bit. Hopefully what I coded isn't actually garbage.
17 Oct 2017
Today I am full of fuzzy logic. Not the good kind that solves problems, the kind that obfuscates. I hope that I can work on something today, but only time will tell. I do have some other less difficult tasks that I should complete. For some strange reason I don't have the most recent web pages on my computer. I find it very strange, that I would update the pages and not have a back up on my computer somewhere. If I download the pages, I may even update them a bit more. I also need to update and add paypal buttons for the last several games. Let's see how far I get with this. Wow looks like this is going to take some serious time. I have slowly copied the few that I have already and all of the files associated with them and converted 2 and that is as far as I have gotten. I have been at this for most of the day, this will take a while. Did a few more and made some pages for the 2 joystick adapter and the 2 Joystick Collections, and I think I am all webbed out. I took a break and then continued, I am a little less than half way. Played around with quite a few things and am a bit happier with some minor things. If I do any coding, I hope I can fix my problem in Atomic Tennis.
18 Oct 2017
This morning I am trying to recreate the problem, so I can figure out how to solve it. I really hope I can finish Atomic Tennis today. All that is left is figuring out this error, and a bit of testing. I've been stabbing at this problem for 2 hours and I think I am further away from an answer than I was 2 hours ago. Having problems reproducing the error, and making changes anyway is not the way to work. After fixing stuff that didn't need to be fixed I may have found the error. I think it was a reversed branch. I will have to do more testing. Not 100% sure but I think that's got it. I will take a bit of a break and start on Spyders. Or maybe a loader. Well in between a few other things I got the loaders set up and I am ready to made a TAP for collection A. I just wonder if I should make an Xvic version or a real vic version. And then I'll have to find a more reliable way of transferring TAPs. Now that my laptop died it will be a pain to hook everything up to my recording computer or this one. Well crap. I finished the TAP but for some reason it won't load Atomic Tennis from the loader. It loads fine by itself. But I think I can officially call Collection A done! There isn't even a place to cross this off of a list! Definately a weird title, but nessessary.
19 Oct 2017
I just wanted to verify that the loader was looking for the right file name, and that appears to be right. My concern is that the warp function on xvic 'misses' things, but that does not appear to be the problem either. For some reason it doesn't 'see' the loader file name or Atomic Tennis' filename. Only if the cassette has stopped will it see the filenames. Because when doing a verify for a non-existing filename, the loader filename won't show up, but if actually loading and stopping briefly after the AJ loader, the splash page loader loads fine. So I will try something, I will record a bit of space before saving Atomic Tennis and hopefully that helps. Nope that didn't work. I guess I am going to have to ruin the loader to check this out. So after several attempts to figure out what is going on I am still stumped. I literally WILL NOT read the 5th file on the TAP, even though I can load it, if I stop just before it. The other set of files work fine. It makes NO sense. So instead of working on Spyders I pissed around with this and got nowhere with it. How frustrating.
20 Oct 2017
OK. I have one last idea to try to make this work. I am using an older version of xvic and maybe there is an improved version of the cassette interface. I will try making a TAP with a newer version of xvic and see if it makes ANY difference. And regardless of the outcome I will work on Spyders after that. I just couldn't let it go and after trying many things on a newer version I decided to just try a dummy program in between. It is a terrible fix but it actually works. I saved a program with 1 line: 1 REM in between the first and second game and finally Atomic Tennis loaded. I have to admit even though it isn't much to look at I think it will be quite fun with another player. So now I have an xvic version I wonder how hard it will be to get a RLvic version. Also my Chinese dremel tool arrived today, so I could start putting together nice looking 2 joystick adapters today. The only thing they would be missing would be a port to hook up other devices. I almost wonder wheather it would be worth the effort. Aside from a internet device and a MIDI device, oh and a speach device, I don't think there are many things that plug into the user port. So I feel good about at least getting AJA-6C-A finished. Quite the serial, but my cassettes are AJV-xC and accessories will be AJA-x, so games for the accessories will have to be AJA-xC. OK enough pissing around Spyders! Well I did pretty good. I have the start of a program, I coded the print and erase and a quick scroll routine. I buttoned up a quick main routine and tried it out. There is good and bad. So the thing that kinda looks not too good, is the scroll routine. It seems too slow. I can guess why, there are about 500 ADCs and 20 SBCs. I was just thinking about how everyone always cautions against self modifying code, and that alwasy seems like the best answer to me (although I have tried to avoid it as much as possible lately). Actually I may have another way to do it I will try and see if the speed increases or not. Yes it did but I need to code something for the top line to see if it is scrolling properly. That took a while, and actually niether is working quite right. OK I have the new line working for now, now I have to debug the scroll routine. Bugger. The scrolling error was due entirely to my laziness. I didn't want to subtract twice but the simple fact is I have to. Now it si working. But I notice I have 1 other small problem. I thought I would put a random space in the web every once in a while, but for some reason it isn't staying on the top line. Just a reversed branch, so I have a really good shell here for a game. I see one other problem I need to fix, just a little thing. The spiders are not animating, I will see why. After I saw a problem it still wasn't fixed and I was very puzzled, but then I found out I was increasing the counter twice, making the print routine print the same characters every time. Alright I have a very good start. Now I need to build a joy routine, a check, some flying bombs, some sounds, and dead and game over stuff and lots of little things. But my back is killing me, I need a break. After my break my back is still killing me, but I tried to put together a second 2nd joystick adapter. The new dremel words great, and it took a while but I got it all together, and went to plug in the joystick and realized I am an idiot. I ordered female d-9 jacks and I need male d-9 jacks! So I can't even test if it works. I took a couple of mock up pictures anyway. Then I came upstairs and printed out the cover for 2 Joystick Collection A. I glued it together and took a picture and only then realized I hadn't updated the blurb at the bottom of the cover. It is the blurb for Downunder.So none of that it working out. I think I will add a couple of quick things to the new game and call it a night. OK so the shell is there, the screen scrolls and the spiders animate, but you can't control them yet. Barring an error that is difficult to find, this shouldn't take too long to finish. So a pic of the new game, the wrong cover and a non working 2nd Joystick adapter.
21 Oct 2017
The most curious of things happened. After work I coded a joystick routine, and started to debug it. One thing I had forgot to do was update the B variable (the old spyder) so I thought I could put that in the erase routine. And aside from a couple fo little things everything should work fine. Well the joystick and the spiders were fine but now the scroll routine is totally messed up!! And the curious thing is there are no overlapping variables, there is literally nothing in the erase routine or the 4 lines of code I added that should affect the erase ruotine at all, and yet it does! I take it out and the scroll routine works fine. Obviously there is some commonality that I just don't see. I just changed the code, it took 4 more lines but everything is working now. I just have to adjust the x for both spiders. Well I kinda wish I could keep going but I think I need some rest. Getting very close though. Things that are left: sounds, check routine, bomb routine, dead and game over routines, and level up routine. The bomb will take the most work. I typed in the check routine but I am too tired to try it.
22 Oct 2017
I was hoping to work a bit ont his but work just beat me down today.
23 Oct 2017
Won't have much time today, in fact I may have already run out. But I did at least want to try to test part of my check routine. So it seems like it is only working if you move onto a space, which is no good, but I noticed something else. It seemed to only print player2 spider every other cycle, which may be the reason that player 1 seemed to flicker more than I had thought it should. Not sure what is going on, I will have to test it a bit more. WOW there was a STA instead of a STX I'm surprized there weren't more problems! Now to solve my check problem. I think I have an idea I have the JSR in the wrong place, as the spider will have been printed already. No more time . Well although drunk I did solve the check problem. I'm not sure how much further I will attempt but ... why not? I can barely think but I typed in the code for the bomb section. I'm way to scared to test it till tomorrow.
24 Oct 2017
So today I am hungover. But I thought I should test what I had coded last night and if it was too frustrating and hurt my head I would just leave it. But surprizingly it almost works!! Or at least for player 1, the bomb does what it's supposed to so far except it doesn't change the colour back at the end and I think I know what I did wrong. For player 2 though it looks like a mess. So I will try to debug those 2 things, and then next I will have to check to see if they hit the other spider. Because I just copied the player1 routine for player2, and then fixed player1, there were several little things that had to be updated and a few variables that hadn't been switched from player1 to player2. So about 20 minutes of pissing around with my hurting head and the bomb routines are almost finished. Now I just have to add a check. But first a quick little break. Beer I love you, but I hate you. That wasn't too bad. Oh but I did notice my random space is doing weird things, I should investigate that. I think it was just a simple subtraction error. I am almost finished the dead routine, just need the game over and level up routines and some testing. But first a break. So my headache is starting to subside as it is the middle of the day, and I finished the game over routine and am working on the level up when I realized a have a very major component missing. I was thinking that when 1 player was finished that would be the end of the game, but the remaining player would always have the same score as the player that died or at most 15 points more, so I will have to make a way for the game to continue after 1 player is finished. It will be alot of messing around. I will get some fresh air. Well that was an even crappier day than I had anticipated. So RL got in the way again, but I didn't have much coding to finish. So the level up is finished, the game is basically done, but if I want the remaining player to continue on, it will take a bit longer. I'm just trying to figure out how to make it happen, but I think I have an idea now. OK I only thought I needed to fix the print, check and erase routine, but through testing found many, many other little things that needed to be fixed or changed. And I think that does it. Wow! I really didn't think that this project would be so long, but it's my own fault. It grew from 4 easy simple programs to 6 programs and the last ones were actually quite involved. I might have to make a new sheet so i have something to cross off. LOL. Although I probably won't dive right into it, I'm not sure which project to pursue. Should I continue with my new and improved version of Tyrant I? I know if I start that I will surely have difficulty stopping. Or should I attempt to finish Realm of Evil? I know that one will be fun to play if I finish it. Programming shouldn't be too difficult, there just will be alot of it.
25 Oct 2017
Today's goal is just to de-stress. It has been/will be a nerve-wracking week. So today I will try to find something I find fun or even mundane, just to let my mind not worry about stuff. So I can work on the web pages, or I can try coding a bit. We'll see what I feel in the mood for. So unfortunately I had to do something else, but when I got back I took some more pictures and started updating the webpages. I updated another 6 pages, still so many to go. It is quite tedious. I guess as long as I can do a few here and there eventually they will all be updated and then I will upload them and revamp the site, just a bit.
26 Oct 2017
Although I have gotten alot done this year, I really hope to finish Realm of Evil this cycle. It will be a big project, but although I am not sure I could finish it by Christmas hopefully early 2018. I had really hoped to do a bit of coding tonight but it was just too long of a day. I was even thinking I might fix a web page or two, but it is too late and I am too tired.
29 Oct 2017
Busy weekend! One thing I have been creating adding and changing is the master web page list. It has a Classic section, which is what I have been working on (and will probably never finish, but who knows), where I have 128 titles mostly written in there. I have reserved 128 to 255 for future classic titles, some that someday may be written by myself and other authors. All the classic series software will use the common 80's style technology. The must run on cassette, use the common memory expansions (3, 8 & 16K) ect. Then 256 up will be the Xpanded series which will use new technologies, like possibly the SDIEC, the Ultimate expansion, or the VFLI mod. I have a few possible titles here, but I don't intend on working on these till much, much later. All this is old news, when I first set up the web pages I did think I would like to build some accessories and I had a dream list of a 3,8,16 and 24K memory expasions. While on the one hand they don't seem very reasonable anymore, I don't really want to remove them either. But I have realized there certainly is room for other interesting and yet simple accessories. So starting after aja-06 the 2nd Joystick adapter, I have added a host of other accessories that I hope to introduce as I have time. I may even bundle a game that works with some of them although the relationship may be nebulous (for example one will be a dust cover and any game that works with that will be a stretch). Anyway the only games I have in the list so far are the ones that are designed to work with the 2nd Joystick adapter, but there are another 5 possible accessories. Some could be realized quite easily others maybe not, but it will be an area that I will continue to work on, but not concentrate on.
So after I rested up a bit I carried on with updating the web pages, I have 6 left, then the big upload will begin. Did a bit more updating to the master list web page, but I think I am done for now. Well even though my back is really sore I did 2 more pages. So now I only have four left. Hopefully I can finish them tomorrow.
Working on Realm of Evil
30 Oct 2017
Won't have much time today, but while I was having my coffee I finished the last web pages. I guess today I have to decide what I wish to pursue: Tyrant I or Realm of Evil. I really think I should finish Realm of Evil. Because it is a big project. I mean Tyrant I will have a fair amount of work as well, but I think Realm is bigger. I am getting better at ML programming, and I have the assembler to thank for that. I can be a bit more stuctured, unlike before where making a change meant taking hours to move code, JMPs and when a branch was out of the 128 byte span, I don't even like to think about it. Sometimes just to not have to move code I would put a JMP xx, NOP in 4 bytes so I wouldn't have to deal with moving it, but what a mess! Anyway I digress, and I guess i have things to do. Lol I did look at the previous posts to see what work I had done to Realm. Really I got alot done in one day, and a whole lot of pissing around for the rest of the time. Had lots to do today, so I was unable to do alot of programming. I started the character builder, and got about as far as Inputting the name. I am using something similar to my input routine for the text adventures, and I am losing the cursor here and there. I am pretty sure is has something to do with not resetting the counddown till it blinks. Yep playing around with that and I got it to work. Well maybe not. I have it printing the stats but I'm not sure how random they are. It's kind of a mess, but I am going to have to leave it for tonight. Actually I have most of it going now, but I have to add a backspace in the get name routine. Forgot about that. I think I just have to load and save the character and load the next part.