Question 1: Is it harder or easier now to see what the code is doing? If it's easier, you could go even further into modular modifications. The goal being, to create a program flow so intuitive, any debugging or future additions and/or modifications could be done in an instant.
I still struggle with the above. What I find is the more conditional statements and shared subs and functions that come into existence, the harder it is to keep the program flow straight. Some methods that help are...
Keep the main part short and use sub calls or gosubs for the heavy work.
so...
Menu
GOSUB menu
GOSUB menu actions
ON menuactions$ GOSUB dothis, dothat, doall, etc
GOSUB finish
I've also found that, although it takes using conditional variables, or flags, it is easier to keep flow understandable when using subs, if you can finish a sub without having it call another sub, which then might call yet another sub.
In sever cases of thousands of lines of code with hundreds of conditions, I've considered keeping segments independent, meaning each module preforms a complete task without sharing sub calls or gosubs; however, that would mean repeating a lot of code. Back in QB days, that would put you out of business in a hurry, but without those old QB memory limits, who cares how big the program is? Sure, it would be more code to read, but understanding it would b a lot easier. There is one draw back. If you modify a block of code that has the same code in another block, you have to remember to modify both. Now cut and paste works great for that, but sometimes conditions present where the code needs to be slightly different in each block, as modifications often create added conditions. So the next time you need to modify the program, you have to make sure you do not forget what looks like the same block of code is no longer the same. See? Keeping it simple, is simply not SIMPLE!!!!!!
Anyway, yeah, I was hoping you'd like to try out some stuff, because I really feel you will be making a lot more stuff, and this should make those future projects easier. I grew up in those GOTO and line number days, too, but nostalgia aside, I don't miss them.
Pete