[11:04:12] Meeting started by thymo [11:04:29] Meeting chairs are: thewonderidiot, indy91 [11:55:49] .ask thewonderidiot I'm playing around with Retread44. Could you tell me why I should assemble them with --early-sbank and --no-checksums. The latter being Retread not having any code to check the banksums if I assume correctly? [12:05:40] Thymo: Ah. [12:07:00] Haha. Hadn't realised you were still awake. :P Where about on this planet are you? [12:07:37] Nebraska. I keep extremely odd hours. [12:11:13] Ah. Got it. Well. Welcome to #nassp if I hadn't already! [12:15:22] :D Thanks. y'all looking for someone to wrangle wiki documentation? (Because the IMU realign checklist page is so-so. It needs better coverage of P52 options and an "oh crap, I zeroed my IMU! Help!" section. [12:27:34] Niklas and I worked on the wiki for a little some time back. But we're not really doing a good job at maintaining it.:P [12:27:50] So yes. Highly appreciated even! [12:32:01] Then I'll sign up on it and start maintaining. [12:34:04] Well that ain't good: "Mailer returned: Failed to connect to prwebmail:25 [SMTP: Failed to connect socket: No route to host (code: -1, response: )] " [12:35:34] Yeah. There were some issues with that [12:35:45] indy91: Hey. What's the status of the wiki registrations? [12:36:24] http://www.ibiblio.org/mscorbit/mscforum/index.php?topic=2940.0 [12:37:05] hey guys [12:37:19] haha [12:37:21] ok [12:38:09] wiki registration, uhh [12:38:23] I can't really remember, I thought dseagrav managed to fix it all [12:39:47] I got a confirmation email when he fixed it, but maybe there was still a manual step involved [12:39:59] could just be broken again [12:42:46] I got spammed by Guenter, so I didn't see the "Sourceforge no longer sends email from the wiki" [12:43:07] I guess we have to ask dseagrav if he has an idea what to do [12:43:12] Yeah [12:43:31] I'll be back in a little [12:43:43] Cannibal^, so you want to help out with the wiki? [12:44:03] Yep. [12:44:23] that's great [12:45:05] are you registered in the forum? [12:46:00] Nope. [12:46:50] that as well is not an easy process :D [12:48:39] are you fairly new to NASSP or are you a long time user? [12:53:06] I'm fairly experienced. Started back in 6.4. [12:54:00] yeah, I think that was my first version as well [12:54:34] from some chat logs I saw you played around with scenario editing a bit [12:55:05] ran into trouble with the AGC versions NASSP used for the mission or something like that? [12:59:37] Yeah, don't use earlier mission APOLLONO: It used to work, but the recent work on LEMcomputer will load Sunburst 120, and that just isn't fun. :/ [13:00:22] Sunburst120 is great... if you want to see a LM do everything on its own [13:01:01] what we should probably do is add a mission config file, where you can specify mission constant parameter like the CMC and LGC versions used, the DSKY type etc. [13:01:16] right now a lot is handled simply with the APOLLONO parameter [13:01:39] which is bad for creating custom missions/scenarios [13:03:20] A bigger TODO is to make a more configurable vessel. Customizable joystick axes and multiple joysticks, with enumeration of which are plugged in. [13:04:15] yeah, that would be great. I added a few things for joystick handling in the LM, but making it customizable like that is a bit more tricky [13:05:22] that would belong in the NASSP configuration menu, which hasn't been updated in a long time. [13:05:28] Because I have an actual flight sim setup with 3 different components (rudder pedals, a two-axis roll/pitch stick and a throttle quadrant with a bunch of axes. [13:06:48] yeah, it only supports two self contained joysticks right now [13:06:56] no additional devices just for e.g. one axis [13:07:53] Yeah, which doesn't work when R and P are on one, Y on a second and throttle is on a third [13:08:44] yep [13:09:10] it certainly can be done [13:10:00] those advanced controller options just need to be implemented [13:13:06] Were it supporting multiple controllers and axis binding, I could control throttle, hover, R, P and Y. And have buttons and axes (throttle/jets? run/stop? rate of descent switch?) to spare. [13:14:26] ROD switch on the joystick would be very useful [13:15:48] the TTCA handling is always going to be awkward, because nobody has a device like it. There is no separate throttle lever, but you control it with one of the translation axis [13:17:01] Forex, here's my throttle: https://images-na.ssl-images-amazon.com/images/G/01/videogames/detail-page/thrstmstr_b00419zuxs-05.jpg That right-side hat switch would be great for ROD There's another hat switch "aaround the corner". And two more axes. [13:18:05] regarding the ROD switch, you can probably map the switch on your throttle to a specific keyboard key, right? [13:19:44] Probably, but I'd have to install the software for this thing (And I hate that on general principles) [13:20:52] I'm used to DCS and X-Plane: "press button, map what it does" [13:23:39] I have used the config tool of my X52 to map a hat to the numpad for switching the stick between rot/trans modes. [13:23:44] s/hat/button [13:29:49] Right, time for bed. 'night folks. [13:30:56] cya [13:32:15] Night [14:14:05] Hmm. I'm having some issues running a version of Retred44 I modified. [14:14:59] For some reason it starts executing at address 4040 instead of 4000. That causes it to never run GO but does DOWNRUPT. [14:19:42] I'm sure Mike will be able to help [14:21:34] It's like DOWNRUPT wants to trigger before interrupts can even be inhibited. Very strange [14:22:41] I run the sim, check the registers before anything happens. Z is at 4000. Step once. Z is at 4040 and a 1 is in ISR. [14:29:14] Just resized my PC's disk. Got a nice 70G free on C: again. :D [14:32:28] yeah, I should clean up a bit as well [14:33:28] I still had a dual boot with Linux which I never use. I just shrunk that to it's minimum and gave the rest to winblows. [14:41:57] Hey rcflyinghokie [14:42:08] Hey good morning [14:42:11] Happy new year [14:42:18] hey [14:42:22] Happy new year! [14:42:44] Happy NASSP 8.0 release year! Well, maybe [14:43:07] Well *assuming* we can keep this pace [14:43:17] I think it is very promising [14:45:27] what I want to do next is add LVDC presettings for Apollo 9 and 10 TLI [14:45:41] and then I can launch Apollo 9 again and continue the MCC work [14:47:42] And I will start slowly working on fine tuning the ECS [14:48:27] ah wait, I still wanted to rework the LM systems timestep [14:48:37] I've been working on Retread44 for a bit. Trying to get the base work done for when we'll need our own ropes for custom/fictional missions. [14:48:43] I'll do that first [14:49:04] I guess we need heat for the glycol as well [14:49:41] First thing is changing PINBALL so you can use a VERB to swap out all verbs with a new verb table. That way there are a lot of new ones available while still retaining the original. [14:50:18] I think what I have now should work. But the AGC doesn't even get to GOPROG. :p [14:53:06] Slow process :P [14:55:32] Yeah. As soon as I do a single step after GOJAM the AGC goes into ISR #8 [14:56:51] rcflyinghokie, you know the heat loads better than me [14:57:51] give me an easy example and I'll commit the code changes necessary for it [14:59:33] Sure let me pull up some docs [15:00:36] I have been roughly using the circuit breaker load page in the sys handbook [15:00:37] you have to give a pointer to the heat load from the config to each system, with the init function. And then just generate the heat in the systems timestep [15:00:53] yeah, that has heat load numbers [15:00:56] There is a heat load column in there [15:01:03] Thats what I have been using to start [15:01:09] There are a few systems I don't have yet [15:01:32] But here is a simple one [15:01:37] LGC is 110W [15:02:12] not a simple one at all [15:02:19] We will have to look into systems with heaters as they need to behave differently but I can give you the simple ones for now [15:02:24] what about standby mode? [15:02:30] Ah touche [15:02:45] I need to research that [15:02:58] wouldn't make much sense to generate more heat than it draws power :D [15:04:06] Yeah I see that [15:04:14] Load is 80W [15:04:17] Heat is 110W [15:06:03] Unless it's including things like the PSA PTA CDU etc [15:06:07] yeah, it's a special case [15:06:31] a bunch of signals are going into the LGC [15:06:36] The PTA and CDU are powered through the LCG and IMU breakers [15:06:38] not just its own CB [15:07:41] so LGC might be the most complicated case for the heat load even :D [15:07:54] IMU is also not a good start, because we have no heat loads in the CSM yet [15:07:57] Hah yeah [15:08:31] how about the GASTA? [15:08:40] 25.9W [15:09:15] oh, I see how it works [15:09:22] AC and DC power [15:09:49] Ah [15:10:45] Actually GASTA has 2 breakers [15:10:46] so let's just say 25.9W for the GASTA, if it is fully powered [15:11:24] What about the 12.5 on the AC bus A breaker? [15:13:23] good question [15:13:57] that still doesn't add up to 25.9, I guess the incoming voltage from the IMU generates more heat? [15:15:16] I don't know what else would add to it [15:15:49] I'll just use the 25.9 for niw [15:15:50] now [15:16:38] Looks like the 25.9 comes from the DC power and 12.5 from AC power [15:18:03] so should I use 25.9+12.5? [15:18:10] Ouch. Retread44's major mode support goes as far as being able to do a V37 and whatever you enter will you throw you in DSPALARM. [15:18:35] I think so yes [15:18:45] But I got it to run. It didn't like the --hardware from yaYUL [15:19:00] If both breakers are in [15:19:22] it won't generate anything without both circuit breakers in [15:20:16] Yeah then add them for now [15:21:36] Lighting should be another less complex condition (I am refraining from using simple again) [15:22:08] lighting? [15:22:46] Yeah [15:22:49] you chose really short names for the heat loads in the config, I hope you checked that none of them were used for anything else [15:23:32] I did [15:23:41] wouldn't lighting heat load have to be generated based on every individual lamp? [15:23:55] The heat load is from the electroncs package [15:24:06] we don't have a system for that yet I think [15:24:13] Nope [15:24:21] is that the LCA? [15:24:51] They called it the TLE [15:25:13] oh, so something else [15:25:18] The LCA is something elese [15:25:18] else [15:25:37] There is the lighting control assembly and tracking light electronics [15:26:17] ah, so the tracking light [15:26:21] that's indeed simple [15:26:22] But frankly all the LCA parts of this handbook are deleted [15:26:29] But the TLE is just the tracking light [15:26:31] we don't simulate one, so we don't have to simulate the leat load [15:26:33] very simple :D [15:26:36] Haha [15:26:41] heat* [15:26:57] tracking light would be good to have though [15:27:03] so you can see the LM through the sextant [15:27:05] Yeah [15:27:14] Using the vessel marker is kind of annoying [15:27:48] we have a bunch lighting options in the API [15:28:11] someone needs to make themselves familiar with it, it's fairly complex [15:28:16] seems like a job for Alex [15:28:28] As he is not present to defend himself, I concur [15:29:15] Ok I have info on the LCA, it controls all the LM lighting exterior and interior [15:29:33] I can do the coding of course [15:29:42] The TLE contains the strobe equipment for just the tracking light so that is why it makes so much heat [15:29:58] 60 flashes per minute [15:30:13] yeah, I wanted to implement something better for the handling of lamps in the LM, starting with the LCA seems the best way [15:31:15] Oh nice there is even a table with lighting color and brightness [15:32:56] And a diagram of the LCA [15:34:42] where? [15:34:49] The LM 10 AOH [15:35:04] Figure 2. 10-2 [15:35:08] My pdf pg 555 [15:36:44] I didnt know the LM had a docking light on when in the SLA [15:44:01] Hmm for the config, should I just add HEAT to the names to make sure there is no confusion? LGCHEAT versus LGC? [15:45:14] lunar guidance cheat [15:45:25] LGCHEAT [15:45:57] yes, adding heat would be good [15:48:08] Haha [15:48:10] Ok [15:49:27] Just added HEAT to every one [15:57:57] Managed to get my code working. The rope now has twice the amount of verbs available. LD [15:57:57] :D [16:00:16] Haha bigger vocabulary ;) [16:02:50] Retread44 is more limited than I thought though. No major modes, no extended verbs, no program alarms. [16:03:46] It's basically just the Executive, Waitlist, Interpreter and instruction check. Plus a couple of memory peeking poking verbs. [16:04:06] The only supported peripheral is the DSKY. [16:06:16] interpreter at least [16:06:20] that seems advanced already :D [16:07:28] It's still listed as LIST_PROCESSING_INTERPRETER [16:07:36] Not even INTERPRETER as in the later ropes. [16:07:55] does it have the same functions already? [16:08:00] vector math mostly [16:08:20] And Retread44 is from before any actual block 2 AGCs were built. So there's no guarantee it even works. There's no code that uses the Interpreter in here. [16:08:30] Maybe [16:09:05] There's quite a bit. But I have no clueless when it comes to Interpreter stuff. [16:09:22] I know that you can enter interpretive mode my doing TC INTPRET but that's about it. [16:12:37] Now I need to add a verb that allows you switch the two tabs. Now you manually but +0 or >+0 in location 714. :3 [16:12:42] s/but/put [16:14:57] Oh that's nasty. [16:15:11] There is program alarm 'support'. [16:15:27] You do a TC ABORT and put the alarm code after that. [16:15:34] Same as later ropes. [16:15:37] However. [16:15:44] ABORT does a TC ABORT [16:15:56] So you end up with a TC TRAP resulting in a restart. [16:16:25] It's also commented as ****FIX LATER**** [16:17:06] this is early days Block II, there was a lot to be fixed and added later [16:20:43] So there might be one down side to all this. If I remember correctly programs can call verb/nouns themselves through NVSUB. [16:21:06] If that goes through the same routines that I modified bad things will happen. Since that verb is suddenly gone. [16:21:38] Shouldn't be a problem for now since technically programs don't even exist. [16:22:25] I probably should test if NVSUB is being run (DSPALARM should also be doing this) and then force the first verb table. [16:38:24] Done. I got rid of verb 33. That's normally used to proceed without data, you can do that with PRO already. Replaced it with my own routine to complement the selector and make it switch to the other table. [16:46:47] Have you guys seen the video that was posted to the mailing list? [16:50:40] yes [16:50:51] I saw it live actually, partially [16:52:31] rcflyinghokie [16:52:32] https://github.com/dseagrav/NASSP/commit/2715aec3267e6a4da4263557c0ee3cf2aa45c87a [16:52:48] this it all it takes to implement the heat load in code [16:53:08] Very clean [16:53:52] So ideally we need a simulation at least in part for everything that generates heat? [16:55:33] we should have most systems already [16:55:47] the lighting stuff would have been implemented at some point anyway [16:58:12] how do we handle systems that are connected to both glycol loops? [16:58:41] I have been thinking about that [16:58:59] My initial thought is give the heat load to both loops [16:59:01] just split the heat 50/50? [16:59:51] I am not sure if that would work well [17:00:06] It might not give enough heat to the primary loop if that makes sense [17:01:03] so more to the primary loop [17:01:11] surely there is some documentation about that to find [17:02:47] Well one section of the loops have noth primary and secondary passes through the same cold rails [17:02:51] *both [17:03:01] 2 passes for primary, 1 for secondary [17:03:18] So that section 2/3 and 1/3 I think would work [17:04:08] Using the diagram we could estimate how much heat to give to each [17:04:28] The TLE for example has 3 lines from the primary loop and 1 from the secondary [17:05:01] The ASA has 2 and 2 [17:05:06] RGA has 1 and 3 [17:05:18] Could divvy them up like that to start [17:08:08] Quick side question, there is a SECRA and SCERA [17:08:13] Is that a typo? [17:08:28] I couldnt find SECRA [17:09:12] I wondered that as well [17:09:33] SCERA is a device in the SCEA, there are two of them [17:09:55] the SCERAs are what I just implemented [17:10:21] Yeah [17:10:40] I mean other systems have duplicates [17:10:44] there is a good chance it's a typo [17:10:54] And even in the glossary there is SCERA but no SECRA [17:11:02] So I was betting on typo [17:12:50] yeah, could just be the other SCERA [17:21:55] Ok so I think a starting point is divvying the heat load based on number of lines going in [17:44:50] morning! [17:45:00] Good morning [17:45:07] what's up? [17:45:17] Trying to figure out heat loads for the LM [17:45:29] fun [17:45:44] Right now trying to find the loads for the LGC on standby versus operating [17:45:46] hey Mike [17:46:11] Thymo: early versions of YUL had a slightly different algorithm for maintaining SBANK, and Retread was written before bank checksums were a thing [17:46:29] in a big way, Retread has unwired holes in the middle of banks that will cause parity alarms if accessed [17:46:56] they didn't actively fill all holes with CCSHOLE, or constants, or anything until checksumming was a thing [17:49:28] indy91: I can't find any transcriptions of the debrief where they talked about the blanks -- Don says in his book that he took notes during it, so I'm assuming that's what he was referencing [17:50:10] yeah, as you said, probably the GNC specific debriefing [17:52:38] as I said in the email, on the second attempt with 11/2 I got program alarms in P66 as well [17:52:47] so maybe I need slightly less load [17:56:34] yeah [17:57:02] 28/5 is roughly halfway between 11/2 and 17/3 [17:57:27] a bit less than halfway [17:58:01] Hey Mike [17:58:04] https://github.com/dseagrav/NASSP/blob/Orbiter2016/Orbitersdk/samples/ProjectApollo/src_sys/yaAGC/agc_engine.h#L351 [17:58:13] increase that to :5 or :6 before you try that though [17:58:16] hey Thymo [17:58:17] I had some issues, I set them out in the backlog. [17:58:24] I got the ones you .told me [17:58:25] Somehow I can't use --hardware with Retread44 [17:58:35] yeah, because that is for running on hardware, lol [17:59:00] It causes DOWNRUPT to occur before interrupts can even be inhibited. [17:59:02] it changes the position of the parity bit and reorders the banks to be how they were in the real thing [17:59:13] Ron wouldn't let me change those things by default for backward compatibility reasons [17:59:13] Really, I though yaAGC supported the real bank order. [17:59:15] no [17:59:31] it needs 2 and 3 to come before 0 and 1, while the real AGC had them in order [17:59:46] and it uses bit 0 for parity instead of bit 15 [17:59:56] a --hardware binary looks like total garbage to yaAGC :P [18:00:21] Ah. So just --parity should work? [18:00:25] yep [18:00:48] Cool [18:01:00] I got quite a bit of options going into yaYUL. :P [18:01:00] yaYUL --blk2 --no-checksums --early-sbank --parity --html --unpound-page MAIN.agc [18:01:11] yup [18:01:16] sounds right for Retread [18:01:18] I suppose I don't need unpound-page anymore. I removed all the page entries. [18:01:24] what are you doing with it, anyways? [18:02:02] I suppose starting out with making a rope suited for general use without any mission programming. [18:02:11] hahaha [18:02:19] you've got a long way to go, starting from Retread :P [18:02:28] http://www.ibiblio.org/apollo/DIY.html#Programming_for_the_AGC_Operating [18:02:41] I'd recommend starting from Aurora 12 at least [18:02:46] or Borealis [18:03:00] it's very easy to remove the test DAP stuff from Aurora [18:03:19] and I've "ported" Borealis from BLK2 to AGC for tests, so it has INTERPRETER instead of LIST PROCESSING INTERPRETER [18:03:20] Yeah, they at least have stuff to acknowledge the existence of an IMU. :P [18:03:59] My feature should easily port over to other AGC ropes. I haven't done much. [18:04:03] really what I would like to do at some point is remove all of the mission code from Luminary [18:04:13] you monster [18:04:13] but that would be a bit of a chore, heh [18:04:34] As you might've read I added a new verb that can swap the current verb table with another one. Allowing for more verbs. [18:04:39] what even is Luminary without mission code [18:04:44] It works pretty good so far. :D [18:04:59] the latest version of the Executive/Waitlist/Interpreter/Restart tables operating system :P [18:05:10] Borealis still has an older notion of phase tables and whatnot [18:05:19] Retread has none [18:05:20] although I think that made the hardware alarm tests easier to write... [18:05:23] yes I know [18:05:26] Retread has almost nothing [18:05:27] lol [18:05:39] Program alarms are just TC TRAPS :P [18:05:46] Intentional I might add [18:05:54] And V37 just triggers an OP ERR [18:05:55] yup [18:06:02] haha I know [18:06:24] A lot of "FIX LATER" comments too haha [18:06:44] and as you pointed out, its self-test can't pass due to early simulator bugs [18:07:00] since hardware Block IIs did not exist yet [18:07:24] they ended up manufacturing Retread 50 to correct those [18:07:40] Which we don't have [18:07:48] the computer history museum has Retread 50 modules in their AGC.... I would love to be able to convince them to let me dump them, but I doubt it will happen [18:07:50] they are very stingy [18:08:29] Might need the same plan as Draper Labs [18:08:48] I mean at least these I know exist and can physically touch [18:09:04] Draper is a big mystery [18:09:57] Was yaTape ever done? Or is SuperJob not doing anything currently? [18:10:13] superjob does run and "work" [18:10:27] but yeah, no tape simulator exists [18:10:39] it'd be a bit challenging because it does a lot of fancy stuff with the test connector signals [18:10:56] ok, testing 28/5 next [18:11:01] 11/2 is definitely a bit too much [18:11:28] I love how well-constrained this is. 17.6%, too low. 18.2%, too high. [18:11:47] another thing I was just thinking [18:11:57] wouldn't the throttle castellations make this problem worse, too? [18:12:17] since the throttle would be counting up and down more than anticipated [18:12:25] not by a lot, but at least a bit [18:16:14] we have those castellations about as much as the real mission [18:16:17] slightly more [18:16:39] good, so THRUST will be a higher than anticipated load once it actually DINCs :D [18:21:53] isn't that an output counter? [18:22:09] or do we need to improve both input and output counters? [18:22:19] the output ones are mostly cheaty [18:22:50] I want to do both [18:22:56] great [18:23:51] I've been slowly filling in the table in https://github.com/virtualagc/virtualagc/issues/1055 as I've worked through all of the counter circuitry [18:24:07] one more input counter to go, and then the output counters should all be fairly easy [18:25:39] should be able to start coding the priority chain and output counters in the next couple of days [18:27:27] but I'm thinking I would like to make the boundaries between the AGC and the rest of the spacecraft fairly accurate [18:28:19] so for example for the ACA, you would just write a voltage to some variable in State and yaAGC would internally do the analog-to-digital conversion and generate the right amount of pulses for that voltage at the right rate [18:31:06] speaking of... they must have changed the resistors in the interface modules for the ACA at some point [18:31:42] ND-1021042 and R-700 both say that the ACA deflection can generate anywhere from 0 to 32 counts [18:31:59] but Luminary itself (and maybe the ICD?) expect 42 [18:34:18] we generate 42 [18:34:28] what kind of voltage does it expect? [18:34:32] in the case of the ACA [18:34:56] well, it's 800Hz AC from 0 to 2.8VRMS [18:35:18] with the phase indicating the direction, but we can just use signs for that [18:35:45] so we could either do from 0 to 2.8 or 0 to 3.96 (which is roughly the peak on a 2.8VRMS signal) [18:36:23] Do we have any information on Sundial? It's not listed on either Luminary or Colossus page. [18:36:37] Sundial was the CMC equivalent of Aurora [18:36:42] CSM systems test [18:36:57] I don't know revision numbers but the last release of it was Sundial E [18:37:09] there is a chance that Margaret might have a copy [18:38:31] Might be worth giving it a spot in the table after Corona? Don't know if we have any documents about it. [18:38:39] not really, no [18:38:52] we just know it existed [18:40:16] we might actually have a single page of it [18:40:24] or was that Sundisk... [18:41:14] no, it was sundial [18:41:16] Sundial B [18:41:20] http://www.ibiblio.org/apollo/hrst/archive/1709b.pdf [18:41:27] PDF page 266 [18:43:35] rhc_count[0] = (int)(lem->CDR_ACA.GetACAProp(0)*42.0); [18:43:48] scaling that to 2.8/3.96 instead of 42.0 is easy [18:43:59] awesome [18:44:24] I tried 28/5 [18:44:27] and then I will generate counts [18:44:29] it looked pretty good [18:44:30] how was it? [18:44:37] but I still got program alarms in P66 [18:44:51] oh wow [18:45:20] weird, on my first attempt with 11/2 I didn't get any [18:46:01] I wonder what the difference is [18:46:42] I also imagined P66 as having much less of a load [18:46:45] always* [18:47:50] damn, and I again didn't check if it actually was a 1201/1202 [18:48:06] it might still be in FAILREG in the saved scenario [18:48:11] what's the address again? [18:49:21] EMEM0375 1201 [18:49:21] EMEM0376 1201 [18:49:44] and I definitely RSET in P66 and it came back [18:56:07] I'll try 17/3 [18:56:14] and maybe even 12/2 again [19:06:21] yeah I thought P66 was a lot less [19:30:56] hmm [19:31:00] got a 520 alarm as well [19:31:06] RADARUPT not expected at this time [19:31:40] hmmm [19:31:46] interesting [19:32:06] although I guess I am slightly more surprised that that doesn't happen more often [19:32:17] we will fix how that works along with the counters :D [19:33:01] that'll probably work somewhat similar to the ACA, if that works for you [19:33:46] i.e. you put a value into some variable in State, and yaAGC will SHINC and SHANC it into the counter at the right speed [19:35:32] what value [19:35:44] oh, the requested one [19:35:49] whatever you're currently sticking into RNRAD [19:36:11] and what is going to cause the RADARUPT? [19:36:26] got 1201s in P66 with 17/3 [19:36:39] RADARUPTs are generated internally on the final SHINC/SHANC [19:36:59] ah [19:37:09] so basically, we don't have to change much [19:37:17] not too much, yeah [19:37:43] oh, what about the radar activity input bit [19:37:52] that gets reset in LR/RR code as well right now [19:38:03] that'll be handled by yaAGC [19:38:21] wait [19:38:23] er [19:38:26] lem->agc.SetInputChannelBit(013, RadarActivity, 0); [19:38:33] that's not an input bit [19:38:35] that's an output bit [19:38:37] yeah [19:38:37] yep [19:38:50] but yes, the resetting of it should be handled by yaAGC [19:38:52] we just use this function for it [19:39:10] because it's a rare case, that we would reset an output bit [19:39:16] yep [19:39:37] any additional timing requirements then? [19:39:45] once you implemented the changes [19:39:59] right now it's simply done in the LR/RR timesteps [19:40:09] it checks if the radar activity bit is set [19:40:10] we'll have to figure out exactly when to take the readings, I suppose [19:40:28] and then depending on the 3 radar bits the LR or RR writes something to the counter [19:40:41] yeah, that sounds like it should work [19:40:52] bit is reset, radarupt is generated [19:40:59] that's right now [19:41:16] but those will need to be in the same big timestep loop as everything else now, I think [19:41:26] ouch [19:41:37] well, it can a separate timestep function [19:41:47] not the one reading the actual data from Orbiter [19:41:52] yeah, and only called once when radar activity is first set [19:45:01] hmm [19:45:15] I wonder if the LGC in P66 is trapped in some kind of alarm loop [19:45:23] it still does some processing for the previous alarms [19:45:33] and that's causing new ones [19:45:36] or something like that [19:47:18] you know what we should try. This whole overloading the AGC thing, but with Zerlina [19:47:28] oooo yeah :D [19:48:09] I'm still puzzled by the alarms in P66 though [19:48:18] me too [19:48:26] can you log erasable locations? [19:48:52] we could try logging the core sets or VACs to see which jobs are going [19:49:17] yeah, I can do that. I have the logging setup on anyway. [19:49:28] Just instead of input/output channels I'll log erasables [19:49:30] how often though [19:49:52] once every 2 seconds would be more than enough, you could probably go less than that [19:49:58] oh, that's good [19:50:10] I'll do every timestep, 1/60 second. or is that too much [19:50:28] that'll be a lot of data to sift through, heh [19:52:26] not as much as these I/O logs :D [19:52:49] I can log it less often [19:53:26] I guess LOC and PRIORITY would be the core set areas to log [19:54:59] and VACxUSE [19:55:28] first I'll try a few runs to see when the alarms stop in P66 [19:58:14] on this last attempt I got a DAP glitch [19:58:28] it just didn't command any RCS firing for a few seconds [19:58:51] it was basically like microsleep [19:59:09] and then it suddenly woke up again and did some larger corrections to get back to the right attitude [20:00:23] this was is P64 [20:00:27] in* [20:01:37] at some attitude excursion it switches to correcting with the RCS instead of TVC, maybe the switching to RCS got delayed or so [20:05:11] oh okay [20:05:37] so loss of RCS firing means you were stomping on too much of SERVICER [20:05:55] so you're definitely loaded too much [20:07:25] attitude command is the last thing SERVICER does before updating the DSKY [20:07:48] https://www.doneyles.com/LM/servicer@167x450.jpg [20:07:51] again really low res... [20:09:08] 12/2, still alarms in P66 [20:09:19] but the behavior in P63 and P64 is pretty close to right [20:09:35] in P63 I only ever got an alarm when I had the 16 68 up [20:09:45] and only late in P63, when it processed LR data [20:09:54] in P64 it could do the 1201 alarm on its own [20:09:56] hmmm [20:10:05] did you change ExtraDelay in agc_engine.h? [20:10:09] yes [20:10:16] unsigned ExtraDelay:5; // ... and extra, for special cases. [20:10:28] if ((vagc.CycleCounter % 12) == 0) vagc.ExtraDelay += 2; [20:10:37] I wonder if the load was less than it should have been before because ExtraDelay was getting above 7 sometimes [20:10:54] now it can get up to 31 [20:11:23] so maybe even back it off to 2/13 or 2/14 [20:11:36] yeah [20:11:48] it still got long freezes of the DSKY in P64 [20:11:51] so that is still right [20:13:10] I also got really large throttle oscillations on this last run, but it was my fault [20:13:21] heh, how so? [20:13:27] there actually was a danger this could happen on Apollo 11 as well, I think [20:13:33] wow [20:13:35] I commanded too many ROD changes [20:14:04] at once I mean [20:14:25] it then started to go from 10% to 100% and started ascending [20:14:33] ouch [20:14:46] I wanted to test if my ROD commands were causing the alarms somehow [20:14:53] so I didn't do any for as long as I could [20:14:59] and then to prevent crashing I did many [20:16:13] too many [20:16:22] apparently, lol [20:26:14] man I really like that the change to :5 caused higher apparent load actually [20:26:24] that means we're even closer to the correct load than we thought [20:26:52] if 2/12 is too much then we're within 3% of where we should be [20:28:09] what does changing it to :5 alone do to the load? [20:28:25] that's how many bits ExtraDelay has [20:28:33] so before it could only get to 7 before wrapping around to 0 [20:28:50] so if it was sometimes overflowing, we would lose delays that we had inserted [20:28:51] ah, so it wrapped around occasionally? [20:28:57] I see [20:28:59] that's my best guess as to what was happening [20:29:05] so should I keep using the :5? [20:29:10] maybe even make it higher [20:29:14] even if I go back to 13/2 or so [20:29:19] just set it to 8 so we don't have to worry about it [20:29:24] will do [20:29:46] that would be a big source of nondeterminism too [20:29:51] yep [20:30:03] I'll use 8 with 13 and 2 then [20:30:10] sounds great! :D [20:30:11] that should be interesting [20:30:26] I wonder if it didn't wrap around as often in P66 [20:30:28] so that's... 15.4% [20:30:58] possibly [20:32:36] I am getting close to not getting any alarms in P63 though [20:32:43] even with LR processing and 16 68 [20:33:41] hmmm [20:34:25] well, we will see after this 13/2 run [20:35:14] I'm starting to think I shouldn't have wiped the database and files from the wiki off my server. Not being able to register isn't really desirable. [20:35:27] Forum emails are still working however. [20:35:44] But ibiblio has outages more often than not. [20:46:21] still alarms in P66 [20:46:51] in P63 alarms are not happening when I have the 16 68 up directly, but each time I press KEY REL to go back to the usual display from the 16 68 [20:47:01] interesting [20:47:15] before they could happen while I have the 16 68 up [20:47:22] P64 still freezes quite a bit [20:47:36] I only got issues later in P66 [20:47:52] so it's pretty close, I think [20:49:10] so I'll try 14/2 next [20:49:56] I get the feeling something is causing additional load in P66, but what would that be? [20:50:22] I'm really not sure [20:51:12] how late in P66? could it be related to the LR dropouts? [20:52:21] a good 30-60 seconds before landing [20:53:22] man [20:53:28] but then more than once [20:53:39] how did we ever land before we fixed instructions taking 50% longer than they should have [20:53:47] that's way more load than we're adding here [20:54:25] we didn't [20:54:29] oh [20:54:30] nevermind [20:54:33] lol [20:54:35] we changed that because we kept getting alarms [20:55:15] well, we did land, but not the normal way. Usually manually after the LGC couldn't do it anymore. [20:55:21] gotcha [20:55:36] anyways... 11 had several decently long LR dropouts, I wonder if that lessens the work done by the LR jobs [20:56:09] we simulate the expected dropout very close to the surface, but not any others [20:56:28] so only just before touchdown [20:56:52] haha, LR dropouts saving the mission would be a great story [20:57:16] because in P66 you really don't want to have program alarms [20:57:52] Buzz might have switched to LR data on the tapemeters instead of PGNS [20:58:06] hahaha [20:58:09] what priority have the analog displays? [20:58:32] the analog displays did still move while the DSKY was blank [20:58:39] so higher [20:58:44] or earlier in SERVICER [20:58:46] yeah, I haven't seen an issue there [20:59:21] so he could still look there instead of the DSKY [20:59:26] to read numbers to Neil [20:59:46] so Neil entered P66 at T+618 [21:00:12] LR dropouts were from T+666 to T+680, T+714 to T+722, and T+756 to landing [21:00:40] those were at H (in feet) of 244, 74, and 17 [21:01:00] there was a velocity reasonableness fail at T+744 (20 feet) too [21:06:39] 14/2 report [21:06:53] I had to annoy the LGC quite a bit to get an alarm in P63 [21:07:20] only very late in P63 and when I did the KEY REL on the 16 68 [21:07:30] P64 was basically as bad as usual [21:07:48] alarms every so often and one after I looked at 05 09 [21:08:06] one alarm in P66, a few seconds before landing [21:08:09] 1202 [21:09:11] the COMP ACTY light is basically on the whole time in P66 [21:09:19] it's not even doing that in P63 right now [21:09:48] https://www.doneyles.com/LM/dutycycle@146x450.jpg [21:09:57] is there a bigger picture of this in the book? [21:10:05] larger* [21:10:36] I don't think so, but I'll check tonight [21:10:48] if not, we should just email Don and ask about it [21:10:54] I'm sure he'll be amused with what we're up to [21:12:42] I hope so [21:12:49] ok, I've had enough alarms today [21:13:00] let's see if the Zerlina scenario is still working... [21:13:25] hehehe [21:14:33] what should I throw at Zerlina? [21:14:37] 20%? [21:14:43] sounds good :D [21:16:03] thewonderidiot: Do you know offhand if there is a routine that clears the DSKY? [21:16:19] what, you mean after you do a V35 or something? [21:16:36] Something like that. [21:16:40] I normally just go to POO or something [21:17:01] Indeed. Was wondering how that was done. [21:17:15] There must be some routine I can call that does it for me. [21:17:29] oh, you mean from assembly, not through the DSKY [21:17:38] Yes [21:17:48] I tried CLEAR but that doesn't appear to be working. [21:17:56] It doesn't do anything bad. [21:18:08] It just flashes COMP ACTY and no other visible activity. [21:18:34] # BLANKSUB ROUTINE BY WHICH AN INTERNAL PROGRAM MAY BLANK ANY [21:18:35] # COMBINATION OF THE DISPLAY REGISTERS R1, R2, R3. [21:19:33] Okay. It definitely is not 5BLANK. That caused a restart. [21:19:37] lol [21:19:43] One way to clear the DSKY. :p [21:19:57] BLANKSUB is part of PINBALL? [21:20:11] hmm [21:20:12] yeah [21:20:20] I think we're looking at different ropes. Retread doesn't have that yet. :3 [21:20:58] well then you're going to have to write it yourself [21:21:02] if you insist on using Retread [21:21:04] I have a 4 in the restart monitor. Let's see what that is. [21:21:16] I just haven't moved it yet. I'll probably change ropes at some point. [21:21:42] really really wishes the yaAGC debugger displayed something other than hex and decimal. [21:23:04] hahaha yeah that is the worst [21:23:09] yaAGC's debugger is so janky [21:23:20] TC TRAP [21:23:42] I've been looking at the source today. It didn't make my eyes happy. [21:24:01] yeeeaaah [21:24:12] But I did find the stuff that converts memory addresses. I'm kindly gonna use that for my own program. [21:24:20] I haven't ever touched it, very much on purpose, lol [21:25:19] Wasn't there a different debugger way back? That displayed the registers and other stuff in a nice overview? [21:25:34] uhhhh [21:25:40] not that I've seen [21:26:05] I think I only saw it on the website somewhere. I never saw it actually running. [21:26:14] ah, could be [21:26:29] http://www.ibiblio.org/apollo/yaAGC.html#Debugging [21:29:31] Maybe make an issue on Github asking for a rework on the debugger (or atleast provide octal displays) that someone (read: not us) can pick up? :) [21:31:01] 20% increase load gives constant COMP ACTY light in Zerlina [21:31:08] but no alarms and not issues with anything [21:31:11] no* [21:32:55] always a joy landing with it [21:33:14] :D [21:33:51] Zerlina is awesome [21:34:24] it's so awesome that we have it [21:34:50] and that it works [21:36:16] good night! I expect some ideas about P66 tomorrow :D [21:37:47] man I already gave my idea lol [21:38:00] Thymo: go ahead and make an issue if you want [21:38:13] it doesn't bother me enough to overcome my laziness level ;) [21:39:43] Haha [21:41:00] We don't have any stripped down ropes for the CM like Aurora/Retread don't we? I think the earliest is Colossus237? [21:41:15] that's right, yeah [21:41:29] but I mean Retread is pretty universal [21:41:36] it's for the CM just as much as it is for the LM, lol [21:42:13] Yeah [21:43:03] Eventually (long long time) this rope will bring a CSM to Saturn. I mean, its probably not too hard to convert an LM rope to a CM one. [21:43:46] Aurora already has a bunch of LM stuff [21:44:08] So I thought maybe use Retread and cherry-pick stuff from later CM ropes? [21:44:16] I don't even know [21:47:16] .ask indy91 Can you assign #236 to me? [21:51:35] you mean the planet Saturn? [21:51:55] I'd say it'd be easiest to start with Artemis 072 and rip unneeded things out [21:52:28] Yeah [21:52:58] a lot of the routines were written generically [21:53:27] I'll take some time to practice with the earlier ropes to get a better understanding how everything works together. I'm probably gonna brake stuff if I start ripping things out of Artemis. [21:53:28] I know the integrator just takes a table that you fill in gravitational values for [21:53:33] it just happens to only have the earth and moon defined [21:53:59] AFAIK the state vector will overflow way before your even close to Saturn. [21:54:14] lol that's fair, scaling is going to be a major bastard [21:54:15] s/your/you're [21:55:19] But my understanding of the state vector goes as far as "that thing that does stuff with your position and hangs the system if it hasn't run for a while". [21:58:27] wonders where he put his copy of "Apollo Guidane Computer: Architecture and Operation" [21:58:34] https://github.com/virtualagc/virtualagc/issues/1056 [21:59:00] Hey good morning [21:59:31] Morning. Or, Afternon. :D [21:59:53] Whatever fits your sleep cycle :P [22:00:24] I asked Daniel if you could be manually added to the wiki. No reply yet. [22:02:43] Time to add yet another important verb to my hacked Retread. [22:02:51] Everyone wants standby mode. [22:04:23] Thanks. I *think* I have access to make changes, but I'm not sure. I'll test it. (Oh, and since you're my point of contact right now on this, the wiki is a bit misconfigured: It thinks my IP address is 127.0.0.1.) [22:04:51] Thymo, speaking of standby, I need to know how much heat the LGC generates in standby :P [22:05:18] Cannibal^: anything specific you wanted to look up in the book? I might be able to answer questions [22:05:33] at least, if it's hardware related [22:06:15] Cannibal^: That's one of the minor things that's wrong. Personally I'd rather see the wiki move hosts and run a version newer than >3 years old. [22:06:21] Same goes for the forum. [22:06:42] if the forum goes anywhere it should probably just be a subforum on the main orbiter forum [22:06:46] rcflyinghokie: Err, not a whole lot is on in standby. Mike? [22:06:54] oh [22:07:01] yes I can help with this probably [22:07:07] I show 110 heat watts in operation [22:07:26] Ah, found it! index, s, saturn, stack, state vecto.. 100, 140, 147, 209, 220-229... Yeah, that ought to work... [22:07:28] http://klabs.org/history/lm-icd/16_lgc_power_sh-108.pdf [22:07:45] rcflyinghokie: those are the ICD pages showing power consumption in operation and standby in the LM [22:08:17] it has 0.5A for standby current [22:11:12] All DC right [22:11:18] yep [22:11:59] Do we have an efficiency rating or something like that? X% is used Y% is waste heat? [22:12:57] pretty much all of it goes to heat [22:14:01] I dont see any eff ratings [22:14:14] does it matter though? where would the power go if not into heat? [22:14:27] I am using a circuit breaker power chart from the lm 8 handbook that has heat loads associated with breakers and their systems [22:15:42] For most cases power load = heat load [22:16:03] But like the AEA, 47W power consumption, 42.5W heat load [22:16:27] hmm [22:16:53] I wonder if that has to do with magnetic cores [22:17:06] And LGC/DSKY 80W power and 110W heat [22:17:54] in any case, I would imagine that the standby power load is the standby heat load [22:18:00] it may differ when turned on [22:26:50] Thymo: The state vector is six double-precision values denoting your position and velocity, WRT a reference body. Packaged along with that is your W-matrix, biasing and tuning for "noise" in your state vector that'll be created by running a fixed-point digital navigationsystem. [22:29:52] Arrgh, I have read access to page sources. I need to be granted write. [22:32:36] Hmm doesn't seem to complicated [22:32:38] Thanks! [22:33:18] So I guess it is as simple as finding a good reference body or extending the 'range' of the state vector. [22:34:02] I might be completely wrong. [22:40:41] Meeting ended by Thymo, total meeting length 41789 seconds