>> That is strange. Remember, UR2 works with a real tpdd which has no such thing as a current directory label, and as well, the whole point of the UR2 stub on-demand loader is that you don't have TS-DOS installed, either ram or rom.
I'm probably not articulating what I'm trying to say right, it's sometimes impossible for me to talk without a whiteboard. I'd explain why, but we'd need a whiteboard. Here is the behavior I have observed: TS-DOS seems to always use M1, or at least does when loading a directory anyway. UR2 does not when asking for DOS100.CO. (Working Dev) UR2: RX: 5A 5A 07 00 F8 0D - ZZ TX: 12 01 00 EC 0D 0A 3E 20 - > RX: 5A 5A 00 1A 44 4F 53 31 30 30 2E 43 4F 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 00 - ZZ..DOS100.CO F TX: 11 1C 44 4F 53 31 30 30 2E 43 4F 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 FF FF 9D - DOS100.CO F RX: 5A 5A 01 01 03 FA - ZZ TX: 12 01 00 EC RX: 5A 5A 03 00 FC - <THE FILE> TS-DOS: RX: 4D 31 0D 5A 5A 08 00 F7 0D - M1 ZZ TX: 12 0B 00 52 4F 4F 54 20 20 2E 3C 3E 20 96 - ROOT <> RX: 0D 4D 31 0D 5A 5A 07 00 F8 - M1 ZZ TX: 12 01 00 EC RX: 4D 31 0D 5A 5A 08 00 F7 0D - M1 ZZ TX: 12 0B 00 52 4F 4F 54 20 20 2E 3C 3E 20 96 - ROOT <> RX: 0D 4D 31 0D 5A 5A 07 00 F8 - M1 ZZ TX: 12 01 00 EC RX: 5A 5A 08 00 F7 - ZZ TX: 12 0B 00 52 4F 4F 54 20 20 2E 3C 3E 20 96 - ROOT <> RX: 5A 5A 00 1A 44 4F 53 31 30 30 2E 43 4F 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 00 - ZZ DOS100.CO F TX: 11 1C 44 4F 53 31 30 30 2E 43 4F 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 FF FF 9D - DOS100.C0 F So, in my playing it looks like when you swap back to TS-DOS, load a directory it runs the PDDuino through the M1 routine, sets the dmeLabel then when you flip to the UR2, do the load DOS it takes the ZZ DOS100.CO F without any issue. Do just the ZZ DOS100.CO F without dmeLabel set it just looks at you. - Brian On Mon, Jul 12, 2021 at 11:26 PM Brian White <b.kenyo...@gmail.com> wrote: > > > bkw > > On Mon, Jul 12, 2021, 9:48 PM Brian Brindle <bbrin...@gmail.com> wrote: > >> >> >> On Mon, Jul 12, 2021 at 5:34 PM Brian K. White <b.kenyo...@gmail.com> >> wrote: >> >>> >>> >>> master actually? or latest default branch which is not master but 0.4.1? >>> I didn't have master marked as default currently because I thought I had >>> made it worse, you know like the partly-broken point mid-way in a >>> refactor, so I made the last-known at least basically-minimally-working >>> version default. >>> >>> But if you're actually using the master branch that's great and I'll >>> switch that to default. That is where I started porting Jim's main loop. >>> >> >> I'm using the Master. I had a lot of issues with the current default. >> Granted I didn't improve my situation by mucking with it, but I stumbled on >> the Master, saw the changes you made and liked them so went with it. It's >> been working pretty well since. >> >> Biggest thing I saw was the PDDuino would wander off looking for >> >>> > label information and not respond to drive commands. Like when trying >>> to >>> > load TS-DOS from the UR2 it would fail unless you could force the >>> > PDDuino to get a disk label, IE: swap to TS-DOS rom, list a directory, >>> > then it would happily go on to the load step. It is somewhat working >>> now >>> > so I took a break from it, although my M0 still doesn't work and I'm >>> not >>> > 100% sure why but I think it's the guy from SdFats fault.. >>> >>> I'd love to know the fix for that. I wrote a whole paragraph in the >>> front page readme about it just as a bug description to be figured out >>> sometime. >>> >> >> I did a lot of debugging on this, both with a serial monitor and with the >> debug options on the pdduino. I came to the conclusion that it had >> something to do with dmeLabel not getting set. When watching the >> interactions it looked like the UR2 just does a ZZ - ZZ DOS100.CO and >> that's it. TS-DOS did a little dance that gave it the root dir first and >> set dmeLabel. >> > > > That is strange. Remember, UR2 works with a real tpdd which has no such > thing as a current directory label, and as well, the whole point of the UR2 > stub on-demand loader is that you don't have TS-DOS installed, either ram > or rom. > > Ken Pettit has a TS-DOS disassembly in his directory on club100 that we > can consult too when it comes to nailing down a real mystery. > > Maybe it's something where IF the server says it supports directory > extensions (by acknowledging one of the commands that should be unknown to > a real tpdd), THEN the label must actually be supplied at various times, > and I'm missing some. > > We had discussed here not too long ago the idea of having a tpdd server at > least have an option to treat some filenames specially, like having > DOS100.CO always work regardless of current directory. It sounds pretty > sensible to me, but if the UR2 loader always cds to root first, then that > means there is no point. > > That would also mean the root label is not free to be whatever I think it > should be, but has to be whatever UR2 cds to or looks for (or else we hack > UR2, or else we recognize UR2 requests and fake whatever makes it happy.) I > don't like "ROOT" as the root dir label. I will not use it unless forced to > by something like ur2 just requires it or something. Similarly for "PARENT". > > I always had the idea that there could be a whole raft of virtual files > that don't actually exist but that could be used to issue commands or > return data like RTC time etc, like /proc /sys etc. They could even be in > their own virtual sub dir. The dir could even be invisible where it isn't > listed in the root directory listing, but never the less works if you > request the right dir and filenames. > > I like the idea that, at least for some things, you might be able go use > them by just opening the "file" in TEXT. Or sched or addr for that matter. > You could have a 2 MB address book for real, but a virtual addr.do that > only sees a 5k window of it at any given time. > > I don't actually know what all the useful uses might be but it just seems > obvious to provide the facility simply because you can, and maybe someone > else comes up with functions that are made possible by using the facility. > > > I mucked with this quite a bit but stupidly went down the route of trying >> to make DOS100.CO found no matter what the current directory was but >> regretted that after I started thinking it was short-sighted for other >> things not DOS100.CO. I'll have some more time here soon to keep >> playing. >> >> >>> >>> So far, actually the lowly 32u4 feather board is actually my favorite. >>> The teensy's have gobs more power obviously, but for this task the 32u4 >>> does the job so the extra power doesn't matter until we start adding >>> features beyond straight tpdd. Either feather is better than the teensy >>> (until you start needing the horsepower) for the sake of: >>> * asymmetrical pin headers for polarity enforcement, >>> * built-in lipo manager >>> * card detect switch, >>> * ...which an interrupt can be assigned to >>> * extra on-board led for the card slot >>> >>> I'm with you on the 32u4's now. Very impressed with what they have and >>> can do. I hadn't really touched them much before. The form factor of all of >>> this is my favorite, the feather mount boards totally make it all work. >>> Great job on those. >> >> >> Brian >> >>