Open oilcan-productions opened 1 year ago
@larsbrinkhoff please mark this as an enhancement.
I think we should also combine the two (or more) CONFIGs (202 and 203?).
Host IP Definitions in CONFIG files I have found. The KS's seem all not have a IMP originally starting in 1989. I made the new assignments up in order in the config.202 files but wondering if we should actually try to preserve the original state and go with the original host IPs assigned back in the lab (if these are known) rather than a slice of the 10.3.0.0 subnet.
EX is actually a hosted ITS of mine, but I don't mind changing its IP address -- since I use NAT to get to/from it anyway. However, I think it is more important to distinguish between the KA, KL, and KS systems that we actually use/build/run these days, and not worry about the configurations we don't actually build (like MC-KS, AI-KA, ML-KA, DM).
Note: when I brought up each of pdp10-ka, kl, and ks, as well as a KLH10 ITS on the same host, I needed a new config -- one for the pdp10-js. I called that one KS (since we had a KA and KL). I didn't integrate that into the github repo, though -- just have it as a local change. I think we should add a KS (for pdp10-ks) though.
Should we define which machines we want to be part of the network and set it up in a way that out of the box they all work together?
Well, the issue is that configs like KA, DB, KL, (and my KS) are potentially used by multiple people -- so that there are many instances of these. Typically, when you want to host a REAL ITS, you choose an appropriate config (e.g. KA) and copy it (i.e. create a new MCOND XX block in SYSTEM;CONFIG >. In that copy, you'd want the IP address (if hosted on the real Internet) to be distinct (and real). So while a few of us might build N ITS systems (each on a different emulator) and might benefit from having distinct IP addresses, most people won't do this. If we do choose to have some showcase network fir N different ITS systems, we really should have distinct config entries (MCOND...) for those -- distinct, I mean from the KA, DB, KL, KS configs that are used simply when you pull the sources from github and build a given emulator/machine.
That makes sense, I was thinking that the generic ones would make no difference what IP address they have since it is translated through the TAP adapter which uses DHCP anyways. But using different addresses for each machine type/name in the CONFIG would allow someone to do a make EMULATOR=all and start them all up networked from the start without having to go through the configuration hassle. If we then could also allow to specify a name override using command line arguments or environment variables you could MAKE any specific configuration you wanted.
I love feature creep 🗡️
Note we already have a network file which you can put an IP address and also a Chaosnet address, why not just make sure that all supported configurations use this?
Note we already have a network file which you can put an IP address and also a Chaosnet address, why not just make sure that all supported configurations use this?
You mean the its/conf/network file? That would work as well. Basically need to create one for each machine or have one with a section for every machine. I was also thinking maybe using a parameter to the MAKE file could also work to override the common configuration.
Not sure why we would need one file for each machine. Since you can really only build one emulator at a time. The file can also be used to add in mapping to other machines.
I wanted to make it easier for someone to build multiple machines and not have to fiddle with the network configuration. But maybe that group is small enough to not worry about that right now
Regarding the separate config files, that's because DB exists in slightly different versions. That's why simh and klh10 got their own copy of the config file. Now there's also pdp10-ks.
I think I made an issue somewhere about merging this. Instead of having all emulators have a full config file, have one common file, and let each machine add in their section at build time.
When I did the KA config, I wanted it to be named DB too, as the official "built off GitHub" ITS name. But for some reason that didn't work with the current scheme. Maybe it can be fixed with a config rework, or maybe it's too late now.
you can really only build one emulator at a time.
That's true, but note that you can build for several emulators sequentially. The output will go to the directory out/\
Not sure I like idea of assembling the config file for each emulator build. This is basically what we have now. I am kind of the idea, one config file with different machine names.
One of the drawbacks of the current scheme, is that there is repeated information in all copies of the config file (see #1172). If you want to make an update to the common code, you have to edit all copies. The idea is to have one single copy of the common config, and then add in the machine-specific part.
👍
I love feature creep
If feasible, I suggest doing the network configuration update separate from #1172. Often the feature creep blow things up and in the end it's a mess.
Working on issues https://github.com/PDP-10/its/issues/2153 and https://github.com/PDP-10/its/issues/2158 I found that the network configuration is not a coherent state.
Opening this enhancement request to create a more coherent state of the network configuration across all SIMH based emulators KA, KL and KS to use the IMP adapter, DHCP and TAP with a static NAT option as well.