[17:03:07] NASSP Logging has been started by alexb_88 [17:03:10] .tell indy91, PR sent with some CMVC fixes [18:24:50] morning! [14:45:51] morning! [15:10:37] Hey Matt [15:18:02] how's it going today? [15:18:30] Messing around with ESP32 for a college project [15:19:34] Need to use the iPerf example to do some wifi speed measurements and needed to patch it to toggle the RF switch on the board for the external antenna and enable a proprietary 802.11 extension [15:25:16] that sounds interesting. [15:44:42] Yeah, we need to do some testing next week to see what range and throughput we can achieve using that mode. [15:45:26] It's all C running on a FreeRTOS implementation. Takes some getting used to but its quite fun [15:45:45] :q [15:52:39] Afternoon [15:52:54] hey [15:57:31] hey [15:57:38] PRs have been merged [16:01:46] awesome [16:22:36] hey [16:28:12] hey alex [16:29:41] hey, I merged your PR [16:30:33] thanks [16:38:41] remember how I said I didn't want to add any more new LVDC features? Well about that... [16:39:16] found some issues with switching between time bases, so I implemented the whole switch selector function from that LVDC example code [16:40:08] most alternative time bases are really just interrupting a sequence of switch selector commands, sending out the alternative sequence, and go back to where they started [16:40:45] I had a lot of bugs related to time bases and I am happy I could delete a lot of that code [16:41:30] when in doubt, implement it all :D [16:41:53] there is just two weird things with this document [16:42:08] it doesn't mention timebase 4A (S-II/S-IVB direct staging) at all [16:42:18] where it is usually very complete [16:42:57] and also, the Saturn IB EDD talks about a hierarchy of switch selector sequences. Class 1 is the most important and can interrupt class 2 etc. [16:43:14] and this document seems to completely mix up class 1 and 2, including in variable names etc. [16:43:44] or not mux up, rather class 1 is class 2 and the other way around [16:43:47] mix* [16:46:12] so how to teat TB4a and TLI inhibit/returning to TB5 are the only things not 100% clear to me [16:46:16] treat* [16:47:44] good thing though is that they used an Apollo 14 LVDC listing for this code transcribed to other programming languages [16:47:54] so it even has code for the lunar impact APS burns [16:54:46] ah nice [16:58:38] I see the saturn1B has the SaturnHasCSM() flag, probably for Apollo 5 [16:59:12] so I guess this is a case where the VC shouldnt be loaded? [16:59:47] SaturnHasCSM() is a Saturn class function [17:00:26] but that CSMAttached flag is mostly pointless now [17:00:39] there won't be support in the Saturn class for any CSM less mission [17:00:48] right [17:01:10] AS-203 will be build with stages [17:01:34] does the Apollo 5 scenario as it is now use the saturn class? [17:01:41] I don't think so [17:01:49] ok [17:02:17] yeah, that is stages [17:02:22] S-IB-4:ProjectApollo/nsat1stg1 [17:02:25] I just wanted to be sure since now the VC is always loaded 1st in saturn class, and was wondering if there is still cases it shouldnt be [17:02:25] S-IVB-204:ProjectApollo/nsat1stg2 [17:02:31] LM-1:ProjectApollo/LEM [17:02:52] we don't have to delete that flag and the SaturnHasCSM() function right now [17:03:03] but I would say there is no requirement to check it anymore [17:06:46] the long term plan is to move things out of the Saturn classes and eventually rename it to CSM [17:08:32] yeah [17:09:01] I thinik the only time the VC isnt loaded yest is when buildstatus is less then 6 [17:09:12] but there is an issue with that [17:10:06] the custom ClearMeshes() I added only deletes from mesh 1 upwards so if there is no VC yet it should start from 0, like the normal ClearMeshes() [17:10:27] because buildstatus less then 6 has calls to ClearMeshes() [17:11:07] only affects the roll-out scenarios I guess [17:11:13] yeah [17:11:27] and that also is (very long term) going to assembl separate stages [17:11:31] but what I can do is add an extra check in ClearMeshes for now [17:11:53] so that it clears all meshes when buildstatus < 6 [17:16:28] hmm does the saturn1B also use the buildstatus flag? [17:17:25] don't think so [17:22:23] so I now made it, if buildstatus < 6 delete all, else delete starting from 1 [17:50:00] doesn't sound like very clean code, but good enough haha [17:52:03] true lol [17:56:01] brb, gotta leave the wifi for a bit [17:57:46] indy91, I am experimenting with using the same AID structure as the 2D panel for switches... i.e. AID_ATTITUDE_CONTROL_SWITCHES and that would include all the switches in that row [17:58:48] hmm, I guess panel areas that work on the 2D panel should also work in 3D, on the mostly flat panels [17:59:01] each switch already has information about its position in the row, so maybe I can find a way to use that for the VC [18:00:02] my idea right now is to have CheckMouseClickVC(int event, VECTOR3 &p) convert to int mx, int my and then call CheckMouseClick [18:01:34] oh interesting [18:01:37] I just need to find a way to convert the p.x, p.y which is a 0-1 range into whats required [18:01:40] mx my [18:01:59] hmm, that is probably pixels, right? [18:02:06] ideally it needs to access the size of the original AID [18:02:09] might not always be the same conversion [18:02:11] yeah [18:28:00] morning! [18:31:51] hey Mike [18:32:04] hi [19:07:22] @indy91, if I were to dig through some of the csm electrical, is there any thing I should steer clear of while you and alex are working on the VC? [19:10:16] hey Mike, anything from Debbie yet? [19:10:29] n7275_, no, I don't think so [19:10:32] yep [19:25:18] https://photos.app.goo.gl/9pnJrPszcJe83DCBA [19:29:19] indy91, does the AddSwitch function for the VC support sending multiple switches under the same AID? [19:30:01] thewonderidiot, oh god, that sounds like I was right [19:31:02] MainPanelVC.AddSwitch(&RCSAscFeed1ATB, AID_VC_RCS_ASC_FEED_TALKBACKS); [19:31:03] MainPanelVC.AddSwitch(&RCSAscFeed2ATB, AID_VC_RCS_ASC_FEED_TALKBACKS); [19:31:04] MainPanelVC.AddSwitch(&RCSAscFeed1BTB, AID_VC_RCS_ASC_FEED_TALKBACKS); [19:31:04] MainPanelVC.AddSwitch(&RCSAscFeed2BTB, AID_VC_RCS_ASC_FEED_TALKBACKS); [19:31:07] it does [19:31:31] right [19:31:51] I am trying to create a row of switches that share the same click area (AID) [19:32:09] but only the 1st switch works in the row [19:32:55] the AID is registered as quadrilateral [19:33:24] let me look at this Comanche stuff for a few minutes, I'll look at it then [19:33:43] ah sure, no rush [19:33:56] thewonderidiot, photo quality isn't great [19:34:13] yeah [19:34:15] it's good enough though [19:34:17] what's that procedure. V4N1E 3771E [19:35:27] haha I was scratching my head about that and was briefly worried I had an erasable problem [19:35:46] but I think what they're going for there is displaying 3772 in R2 [19:35:58] which is VGDISP [19:36:30] yeah [19:36:50] and then V21E? [19:36:54] doesn't look like it [19:37:18] and 3653 which is DELVSAB [19:37:23] I didn't want to be right [19:37:26] haha [19:37:46] so basically copying VGDISP to DELVSAB [19:37:50] so then do you think Comanche 45 actually used VGDISP instead of DELVSIN? [19:38:31] in P40 [19:38:34] ah right, that was the second part of my theory [19:39:00] well we knew for sure that the VLOAD ABVAL; DELVSIN; STORE DELVSAB was new [19:39:09] seems like the easiest fix [19:39:14] but there was a question of if it was DELVSIN or VGDISP [19:39:15] not necessariy the best [19:39:34] and if it's VGDISP I guess based on that procedure it would be DLOAD, and there would be no ABVAL? [19:39:39] or SLOAD even [19:40:08] but even then that doesn't make things one word shorter like I need... [19:40:36] I've already forgotten half of the revision history of this haha [19:40:56] CA VGDISP; TS DELVSAB would accomplish this in one less word if it were in basic... but this whole chunk is interpretive [19:41:46] right, also an option to do this procedure in code [19:42:03] but that seems unnecessary. If you are fixing the code might as well do it properly [19:42:18] let me reiterate. Colossus249 [19:42:25] VGDISP and DELVSAB have the same address [19:42:37] P30 stores the DV magnitude in VGDISP [19:42:44] and P40 then uses DLEVSAB, same thing [19:43:05] between C249 and C44 they split the addresses of VGDISP and DELVSAB [19:43:57] so C44 has this basically like C249, right? [19:45:25] in that those three words (VLOAD ABVAL; DEVLSIN; STORE DELVSAB) are not there at all [19:45:26] yeah [19:45:58] which C55 does [19:47:20] so C45 still has to calculated VGDISP from DELVSIN, in P30 [19:47:30] calculate* [19:53:19] what do you mean, still has to? [19:53:26] is that something that C55 no longer does? [19:53:44] C249 does it, C45 also still did it [19:54:02] yes I got that, but the question was, does C55 do it [19:54:52] C55 still stores in VGDISP, for display in P30 [19:55:03] so I'm not sure what you're saying then -- all three are the same? [19:55:15] in P30 yes [19:55:37] I'm just slowly going through this in my head, the many versions confuse me haha [19:55:42] haha gotcha [19:56:39] as per the the anomaly report they likely added the DV calculation to P40 [19:56:57] and not just copy over the VGDISP to DELVSAB [19:57:06] from 44 to 45 [19:57:09] I think the end result of this is that we haven't learned anything we didn't already know here lol [19:58:16] what would DLOAD VGDISP, STORE DELVSAB do? [19:58:44] instead of DV calculation. Maybe the DV calculation wasn't added until after C45? [19:59:03] it would take the same number of words to do, so it wouldn't help me with bank offsets [19:59:22] it's just another option to try if we manage to align the bank but still have a bad checksum [20:00:17] we need one word fewer than C55, right? [20:00:24] somewhere yeah [20:00:49] or I have a different, bigger problem, which is also possible :D [20:02:13] but if we just change DMP DELVSAB to VGDISP then we are 2 words short [20:04:29] so the anomaly report mentions P41 [20:04:59] is S40.1 called by P41? [20:05:56] back in a bit [20:09:49] DMP? [20:23:18] well further down [20:23:29] where DELVSAB is used [20:25:33] oh I wasn't really done summarizing yet [20:25:40] oh gotcha [20:25:41] lol [20:25:46] C55 code says THUS PERMITTING MODULE-ONLY CHANGE [20:25:54] that has to be the change from 44 to 45, right? [20:25:57] yep [20:26:09] and then the document you got from Purdue [20:26:18] change document from 45 to 55 [20:26:31] ABVAL of DELVSIN is not marked as the change [20:26:49] right, because that document was using 45 as a starting point [20:27:01] there never was a programmed guidance equations for 44 [20:27:02] it marks 2 lines, probably [20:27:14] one was that change from DMP to DMPR [20:27:31] but it seems to also mark that line with BURNANG = [20:27:48] I think that's where I thought maybe that didn't say DELVSAB before, but VGDISP [20:28:11] ohhhh [20:28:18] gotcha [20:28:36] which would make no sense if it already calculated DELVSAB above [20:28:37] other than the DMPR though I think the C249 and C55 code is the same there [20:28:41] right [20:34:31] so yeah I guess going for C44 first before C45 is still the best way forward [20:34:52] and then figuring out which addresses could not have moved between the two based on references from other modules [20:37:26] there still is that other bank error, right [20:37:45] and I am not seeing any more C44 only anomalies [20:44:26] yeah, so this is in bank 16 [20:44:40] and then bank 17 has some TVC initialization stuff in it maybe? [20:47:41] ah right, ATTINIT [21:04:06] AlexB_88, are you using the switch row for the AddSwitch? [21:04:50] MainPanelVC.AddSwitch(&ManualAttRollSwitch, AID_VC_ATTITUDE_CONTROL_SWITCHES); [21:04:56] thats the 1st one in the row [21:05:03] I have them all using that AID [21:05:37] oh, now I get it [21:05:44] so no, you can't actually do that right now [21:06:04] the redraw should work with multiple switches on one AID [21:06:08] but not the mouse click [21:06:13] I had only set that up for meters [21:06:43] ah, right [21:09:09] ok so for this, it would make sense to implement some code handling panel areas for more than one switch [21:10:38] yeah [21:10:44] either using switch rows [21:10:58] or adding a new type, panels [21:11:29] but one panel area per switch row would work [21:11:43] right [21:12:20] this is how I have been using to access the normal CheckMouseClick [21:12:21] int mx; [21:12:21] int my; [21:12:22] mx = int(p.x * 292); [21:12:22] my = int(p.y * 29); [21:12:23] CheckMouseClick(event, mx, my); [21:13:06] that is just for testing one row, I need a way to know the size of the row [21:13:15] and not * 292 etc [21:14:06] PanelSwitchesVC probably would get a AddSwitchRow function [21:14:44] SwitchRow::CheckMouseClick iterates through all switches to do the mouse click check [21:14:53] it's nearly the same for the VC [21:15:01] just the vector p and not mx, my [21:15:14] and if it can send the dimensions of the row that would work great I think [21:15:39] hmm [21:16:01] the more I think of it, the more it seems like a better idea to keep CheckMouseClickVC separate [21:17:16] you need a way to know the position of each switch in the row [21:17:36] the already registered x and y would have that [21:17:57] SSU seems to do a conversion like this [21:18:06] mx = (x - p_a.x) /(p_d.x - p_a.x); [21:18:07] my = (y - p_a.y) /(p_d.y - p_a.y); [21:20:06] p_d and p_a are the VC mouse region in the panel area I think [21:21:00] it's a difficult balance [21:21:11] do we implement lots of duplications for 2D and 3D [21:21:27] or keep things the same, but making it harder if we ever go VC only [21:24:40] yeah, I think some things apply well for both already [22:19:34] night! [13:27:45] Morning [15:08:28] hey [19:26:49] whoops. got destracted and left the house for a while [19:38:54] hey [19:41:42] hey Alex [20:10:35] hey [20:17:57] indy91, so did you have any ideas on how we could make the switch rows for the VC? [20:21:04] maybe not necessary yet, but the advantage is reducing the amount of AIDs and making the click-modes quadrilateral [20:21:25] I mean, I'd like to steal the concepts SSU uses, they work quite well [20:21:40] it's just adapting them for NASSP, reusing stuff for the 2D panels etc that is tricky [20:22:47] right [20:23:15] I'd rather have full panels than switch rows [20:23:35] there are still too many switch rows [20:24:32] yeah, makes sense I think that is what we want long term [20:25:34] I mean, if you can come up with the framework of it I can do the work of converting everything to it, like the animations [20:26:01] yeah I'll take a look at it soon [20:29:18] I cant do much work now anyway as im in Florida [20:33:25] they'll invent computers in Florida eventually [20:33:55] lol [20:36:21] well, I have my laptop... a good thing since I am staying in a all-apple household :D [20:48:30] Hi [20:50:35] hey [21:34:19] night! [22:57:30] I think I managed to simulated voltage drop with increasing load on the fuel cells [23:00:14] Nice. [23:01:10] I was just playing around with the fuel cells. Turns out you can't run both MNA and MNB off FC2 [23:01:38] Had a FC BUS disconnect and lost both buses [23:02:05] Already upinked a new state vector and clock update... now I need to get the platform back [23:02:27] The FC BUS DISCONNECT light is stuck for some reason though [23:29:40] Okay so the stuck C/W light isn't something I'm doing in my branch. good to know [00:06:57] might be this piece of code: SetLight(CSM_CWS_FC_BUS_DISCONNECT, ms.Fc_Disconnected && (Source == CWS_SOURCE_CSM)); [00:10:24] Yeah, I forgot to set the disconnected fc switch to off :p [00:11:00] Got to align the IMU to GDC though, you don't do that often [00:11:05] Usually the other way around [00:11:33] V74 is useless though. The ground station doesn't recognise the downlink list [00:17:05] ahh, yep the light works if you set the switches in the right position, lol [00:17:39] Yeah, pretty dumb on my part. Already had the debugger connected when I found out haha [00:18:19] Checking the other systems now. The S band lost lock, don't think anything else is outta wack [00:22:19] well I did the exact same thing too, I've got about 15 tabs open in visual studio I need to close now [15:51:13] Hey Thymo. I saw your comment on the PR. good thoughts [15:52:21] I don't think it would be hard to add transient behavoir to the fuel cells at least as fars as reactants and avaliable power are concerned. [15:53:18] s/fars/far [15:56:33] I'd also like to add clogging back in so that purging actually does something. I think Markus disabled it prior to 2009. [15:57:59] Also pH and temperature-efficiency aren't simulated [17:32:49] Hey. Just came back from visiting the grandparents [17:33:19] n7275: Yeah, I'm not sure why that was ever disabled. Would make purging useful again [17:33:56] Temperature is also a thing. That makes it so that our fuel cells can be restarted even if they've been frozen solid. [23:40:06] Ooh just did P23 and am still right on the money with my state vector. Range and range rate are all balls [01:29:10] nice! [02:12:18] I reenabled clogging. it behaves as expected when on pannel 1-3 and runs backwards in any other view... [02:15:11] some update/refresh function is only getting called on main panel [02:38:37] nope, nevermind. it's just instable at higher values of simdt [02:38:55] typical eulers-method problen [02:39:10] **problem [13:39:31] hey [13:41:44] hi [13:49:21] hey [15:45:19] hey [15:49:14] morning Alex [15:55:38] hey [16:06:45] whats up? [16:18:58] some LVDC bug fixing [16:19:53] there actually is one right now, in the current version of the LVDC, if you inhibit TLI after the APS ullage burn has started you get a stuck on S-II sep light [16:20:39] the Apollo 8 S-IVB flight test plan doesn't switch that off [16:21:11] seems unlikely, but this could have happened during the Apollo 8 mission, if that isn't just an error in that document [16:35:09] ah, so a bug in the real thing too [16:36:24] well potentially [16:37:59] doesn't get mentioned in the mission rules as it wouldn't harm anything [16:38:06] and it could be fixed by uplink [16:54:51] I am at the stage (again) where I am mostly fixing smaller bugs, so maybe I can release the update within a week [16:56:18] nice [16:56:31] looking forward to give it a try [16:56:52] not that I really can before December 1st :D [16:57:05] then I have good timing [17:11:25] back in a bit [21:28:53] night! [21:38:33] same [02:30:46] I have an extremely silly thing to ask here. [02:31:55] In the Apollo 13 movie, there was a Mr. Coffee maker, and..... it couldn't have been there, as Mr. Coffee was 1972. In the movie it also was a Mr. Coffee II https://i.imgur.com/XcIg2sk.png [02:32:09] Now discounting that this was made up, let's take their comment seriously [02:32:49] So 1625 watts (peak and brewing of course) https://i.imgur.com/CeF35os.png [02:33:05] unless they meant running for 9 hours on just the hotplate [02:33:54] So the question is at that point in the mission, how much did they have left in the batteries, amp hour wise or otherwise, was this just a throw away line or was there actual math nerd-age involved in that? [02:35:35] (or was there a different coffee maker, eg a percolator, and a similar thing was actually said about in the mission for real (other than just to add drama in the movie))? I know this is a silly thing, but I figure with enough people doing simulated 13 runs here, someone has a answer on the power left :D [02:36:45] either way I am glad to have figured out that the brave crew trying to support apollo 13 wasn't working off drip coffee for some reason. Just feels right. [04:16:16] hmm, interesting question [04:20:14] ~600 amp hours at 28V is 16800 Wh /1625 watts is 10.3 hours assuming a fully charged LEM [06:58:28] indy91, I had a major comanche breakthrough :D [06:58:36] going after 44 was definitely the right move [06:58:57] looking at cross-module references, they definitely had to pull some shenanigans for revision 45 [06:59:21] probably inserting a jump from bank 16 to bank 17, doing the actual calculation there, and jumping back [06:59:28] but anyways [07:00:01] I switched over to using C44 checksums, deleted the lines added for C45, and started fiddling [07:00:39] and it turns out that if I restore LDPLANET back to its original implementation (including the 1/SQRT3 factor, but using STAR instead of STARSAV3), then I get correct checksums in every single bank except for 16 [07:01:02] that includes 17, which is where K2VAL/K3VAL *and* the TVC initialization code live :D [07:01:12] so we're *super* close [12:55:15] Damn, Mike. That's awesome! [17:22:19] hey [17:23:26] found something that may be a VC bug [17:24:28] I'm testing my fuel cell modifications, csm in lunar orbit [17:24:40] left it running for about 4 hours [17:25:22] and the DC voltage needle has disappeared [17:25:56] voltage should still show at ~29.8 volts [17:27:33] looks similar to the LM signal strength gauge disappearing-needle issue [17:31:10] hey [17:31:19] yeah it's the same type of gauge [17:33:27] does the bug go away if you reload? [17:34:33] oh and do you have the "absolute animation handling" option enabled? [17:37:09] not sure I do. [17:37:46] nope, wasn't on [17:37:55] that might help [17:38:19] not that we should build a VC that requires that option, but I think we basically do [17:38:53] yep, reloading and enabling fixed it [17:39:14] morning! [17:40:10] hey Mike [17:40:25] congrats on getting all those banks right [17:40:51] n7275_, it might be that the animation state drifted over the hours [17:41:08] in the DeltaGlider VC for example there is some code that prevents the drifting, I think [17:41:19] we currently don't have that, so absolute animation state handling helps us [17:42:17] thewonderidiot, so what would be the remaining difference in bank 16. Maybe something in a different part of it? Not S40.1 [17:42:40] yeah I'm not sure, nothing caught my eye at a first run through [17:42:53] there is more TVC stuff at the end that could be involved [17:43:23] what does C44 use in S40.130 [17:43:26] F or FANG? [17:43:44] uhhh pretty sure it's F [17:44:04] didn't they already add padloaded FANG? [17:44:20] if they did then I'm missing that [17:46:34] I could better help you if I could look at the current C44 code you have haha [17:47:20] and yes, C44/45 should already have FANG [17:47:33] so S40.130 should probably use it [17:48:57] huh, I could have sworn it was only K1VAL haha [17:49:02] which PCR was that again? [17:49:44] GSOP has F_imp, which is FANG [17:49:47] in erasable [17:49:52] 729 maybe? [17:50:13] yes [17:50:14] oh yeah sure enough [17:50:23] "K1 & FANG in Erasable, IMPULSE Burn" [17:50:27] whoops [17:50:56] I think it didn't come up because you usually worked backwards from C51 [17:51:05] but maybe you took this section from C249 [17:52:28] at least that's why I didn't think about FANG before :D [17:52:45] haha [17:53:01] well that's not enough to totally fix it [17:53:16] went from diff=21237 to diff=17302 [17:54:02] so this part of the code, is that generally taken from C249 or C51? [17:55:13] that whole log section is mostly from C51, except for removing the anomaly fix, DMPR->DMP, and restoring K2VAL/K3VAL to fixed memory [17:55:40] https://drive.google.com/file/d/1nOMPylbOS_EtUIUxKVgsEnwu6ZuhQoxV/view?usp=sharing [17:55:41] hmm, how did FANG end up as F then [17:56:03] because I thought only K1VAL had moved to erasable [17:56:07] that was an intentional decision lol [17:56:11] just a wrong one :P [17:56:30] anyways, that is my whole Comanche 44 folder as assembled, after putting in FANG [17:56:38] great, thanks [17:58:49] a lot of this should be identical to C249 [17:59:05] a lot of what? [17:59:53] P40/P41 code [18:00:22] and especially S40.130 is in the GSOP the same, just K1 and FANG from erasable [18:01:19] K2 and K3 changed from C249, but even if I gave you bad values, that alone can't be the bank difference, right? [18:01:40] well, they are double precision [18:01:41] luckily those constants are in bank 17 which currently has the correct checksum [18:03:07] oh right, scrolled too far [18:03:35] the only constants in bank 16 in that section shouldn't have changed [18:04:20] is anything else in bank 16? [18:05:33] the way I normally look is by searching for ": 16," in the Comanche044.lst file [18:05:39] there is a lot of stuff to list haha [18:05:46] right [18:06:17] I searched for the exact same thing, just in the P40 file only [18:07:22] btw, the reason I think there must have been shenanigans for Comanche 45 [18:07:52] is that S40.1 and S40.8 are both referenced from bank 24 in module B4, so since only module B3 was remade, neither function could change addresses -- and they're right next to each other [18:08:00] so you can't just go and add 3 new words to S40.1 [18:09:06] ah, annoying [18:09:57] so maybe they took some code out of it to make room for a jump to a different location and then jumped back [18:10:04] with S40.1 and 8 being in the same location [18:10:13] yep, that's what I'm thinking [18:10:33] which is probably why the bank 17 checksum also changed by a lot [18:10:43] ah LDPLANET is also in 16 [18:11:09] yep, right at the beginning [18:11:22] adding the VXSC 1/SQR3 is what made all of the banks line up [18:11:37] so you are sure LDPLANET is correct [18:11:43] not 100% no [18:11:50] but I do think it needs to be the same size it is now [18:12:02] interestingly, Comanche 44 has both 1/SQR3 and 1/SQRT3 constants defined [18:12:16] to the same value pretty much [18:12:38] they got rid of one of them for Comanche 51 but it's possible that 44 used a different one than 51 does [18:13:41] changing it to 1/SQRT3 changes the difference to 06633, so that alone (if it is even correct) doesn't explain all of the error [18:14:19] right [18:17:10] ok the rest of bank 16 doesn't look very suspicious apart from the stuff we already know [18:18:13] a bit of reentry and P52 code, also taken from C51? [18:22:48] yep [18:23:58] might be a weird idea, what if e.g. the erasable addresses of EK1VAL and FANG were reversed? [18:24:36] diff goes from 17302 to 17301 [18:24:42] so if we need to change it by 1 that is an option lol [18:25:37] haha ok [18:29:29] Norton may actually tell us if 1/SQRT3 or 1/SQR3 was used [18:29:37] in LDPLANET [18:31:05] okay so that's on MEAS-20 and C55 is using 1/SQR3 [18:33:08] and its presence in MEAS doesn't have an associated black bar on the left [18:33:19] so yeah 44 was most likely also using 1/SQR3 [18:34:26] man silly me, that also would have been enough to tell me earlier that Comanche 44 already had that 1/SQR3 factor in LDPLANET haha [18:34:37] but that is some good corroborating evidence [18:39:14] change to S52.3 from CSMCONIC to CSMPREC was definitely done before C44 [18:39:32] PCR 686 [18:39:43] so that's correct [18:39:54] just going through bank 16 in more detail [18:51:20] oh good, that's one of the things I saw that I wasn't sure about [18:52:45] by the way, the highest reference from another module is to REDOTVC at 16,3135 [18:53:10] so it is unlikely that the number of words before that point is wrong, unless there are two errors that cancel each other out in size [18:53:30] after that, there could be words added or removed without affecting other banks [18:54:21] ah, good to know [18:54:45] that calculation in LDPLANET is still so weird to me [18:54:51] STARSAV3 is N88 [18:54:55] manually loaded star [18:55:03] should be a half unit vector or so [18:55:09] and then multiplied by 1/sqrt(3) [18:55:12] and then UNIT??? [18:55:21] has to be some trickery like the double UNIT [18:55:25] haha yeah [18:55:39] I may play around with other incantations there [18:55:55] but that does currently exactly match the Comanche 55 listing except for using STAR instead of STARSAV3 [18:56:26] Microsoft.Photos.exe has an unhandled except. Great job Microsoft [18:56:31] lol [18:58:00] UNIT also stores the length of a vector in 36D or so [18:58:04] maybe they are using that [18:58:19] yeah [18:58:31] PLANET in P50-P53.agc does the same calcluation [18:58:37] VXSC 1/SQR3 and then UNIT [19:00:02] square of length of vector [19:00:07] in 34D-35D [19:01:20] DIVIDE double loads 34D [19:02:54] and LDPLANET in C44 works with the anomaly report for it? [19:03:07] uhhh what do you mean? [19:03:14] I might have missed that [19:03:17] it seems to suggest different solutions for Comanche 44/45 vs. Colossus 2A [19:03:41] or wait, was this an anomaly in 44 [19:04:04] are you talking about COM-5? [19:04:45] yep [19:05:03] yeah what they're talking about there is changing STAR to STARSAV3 [19:05:08] I think that's the only difference there [19:05:59] under 2.7 it says "follow 2.4 for Colossus 2, fix for Colossus 2A" [19:06:27] seems to suggest they would look at it again for 2A, but maybe they didn't [19:06:40] yeah, STAR->STARSAV3 happened between 45 and 51 [19:07:02] ah, in 2.4 the "load" talks about the astronaut [19:07:04] not a code change [19:07:10] yeah [19:07:22] and in the top right it says the anomaly applies to both C44 and C45 [19:08:02] once again lack of Apollo 10 checklists is hurting us [19:08:14] Is that my cue? [19:08:36] hahahaha [19:08:38] hey Ryan! [19:08:44] hey, long time no see [19:08:51] Yeah its been pretty crazy [19:09:08] Sorry I disappeared :( [19:09:27] no worries, life happens :) [19:09:31] hope you're doing well! [19:09:32] you appear more often than my hope to reading the LVDC listing, so you are good [19:09:37] lol [19:09:38] Hah [19:09:53] Yeah fiancee and I are planning a move to Colorado we have been out there this summer property hunting [19:10:11] nice! [19:10:17] So I have been away from pretty much all my computer stuff aside from my work laptop [19:10:54] But now I am back home and with holidays things are settling down and I needed to come back...I am missing this haha [19:12:08] when were you here the last time? What do I have to tell you all about that we did in the mean time [19:12:21] Spring [19:12:38] I need to get my VS and NASSP set back up on git [19:13:00] we reconstructed Sundance 306, I think we started that in spring. So you can fly the Apollo 9 LM with the correct software now! [19:13:49] it can land on the Moon: https://www.youtube.com/watch?v=Sv70QX7L0H8 [19:14:28] our LM has a full virtual cockpit now [19:14:32] well, mostly [19:14:39] Alex is working on the CSM as well [19:14:40] Oh very cool [19:15:13] I have been on one of the DCS discords theres a guy in there who loves NASSP and is working on a better docking probe model [19:15:25] I dont know the details I just saw pics [19:15:53] sounds great [19:16:04] https://www.dropbox.com/s/b2ipnsyxmnho4iu/unknown.png?dl=0 [19:16:09] I need to get him in here [19:16:15] Hes shy haha [19:19:30] we don't bite [19:19:38] well, depends on the quality of pull requests [19:19:54] looks really good [19:20:26] Yeah of course [19:20:35] I'll see if I can coax him in [19:20:48] Ok now to remember how to set all this up...ahh i need to install orbiter again :P [19:21:14] I can recommend Alex' extremely detailed installation instructions [19:21:23] Lol [19:21:55] Oh wait, it should be backed up [19:22:40] yep worked, but I need to get the SVN up for orbiter and then link my VS again [19:23:25] the most shocking NASSP news is this [19:23:35] I learned to read AGC code, to help Mike reconstruct Sundance [19:23:54] hah yeah we both know how to read interpretive code now! [19:24:36] is there any other type of code? :D [19:24:40] lol [19:26:26] Thats awesome! [19:28:13] Sundance was fun, we had a mix of rev 292, rev 302, and rev 306 module dumps, so we had to disassemble each individually, figure out how code shifted between the revisions, and write our own implementations for a couple of functions that were missing from our mix of modules [19:28:57] and we have no banksums for it, which doesn't help [19:29:42] *woosh* [19:29:49] haha [19:30:06] no thats really awesome, how does it perform in flight? [19:30:19] it does everything Apollo 9 has to do [19:30:40] the landing code is *very* janky [19:30:53] it handle the docked DPS as advertised? [19:30:56] there are some interesting procedural differences, you'll see if you fly the mission [19:30:58] yep [19:31:03] nice [19:31:04] we had to come up with a particular sequence of events to keep it from crashing, both in terms of computer restarts and also lunar surface [19:31:09] lol, [19:31:33] once Mike had a version that could be assembled, I launched Apollo 9 and flew it until something didn't work [19:32:01] the first function we had to write ourselves already was relevant for the docked DPS burn [19:32:11] after a few iterations that started to work [19:33:13] main problem for the rendezvous was me getting used to Sundance really [19:34:18] lunar landing works good, and what also is fun is that Sundance still had P10 and P11 [19:34:34] for calculating the lunar liftoff time onboard [19:34:41] still want to make a video about it [19:36:51] that was a fun day when we first found out that Sundance already had P63, and still had P10/P11 haha [19:43:02] Haha little gems everywhere in that spaghetti code [19:44:00] Is Orbiter beta on Rev 90? [19:58:28] yep [19:58:37] there hasn't been an Orbiter update in a while [19:58:48] ok just making sure my svn is working haha [19:59:04] now to relink my visual studio [19:59:16] and of course it needs a restart to update [20:50:55] hmm vs2019 isnt playing nice [20:51:50] oh its using build+intellisense maybe thats why [20:51:51] oh 2019? We are still using 2017 [20:52:17] I was using 2019 before with no issues just need the 2017 plugins or whatever they are called [20:52:48] but it still wont play nice hmm [20:52:52] time to troubleshoot [20:57:34] ah missing a component [21:00:38] Yep all good [21:00:48] forgot to add an sdk component [21:00:59] thankfully the error message is smart enough to tell me which one [21:01:27] ah that's good, I had trouble with that stuff when I last set up VS [21:02:19] successful build is a good sign [21:15:28] hmmm dxd9 crash [21:19:39] did you install the DX9 client for the beta? [21:20:32] yeah [21:21:19] now I am getting all sorts of build errors after the crash [21:23:44] that's weird [21:24:35] I might just need to do a fresh install [21:28:21] yeah I think its just all confused [21:29:04] old changes not being replaced [21:50:19] Lol I got myself lost in git [21:52:51] oh oh [21:59:10] thewonderidiot, in the Norton manual the K_ldsqr3 constant is also marked as being changed. What was that change? [21:59:21] what page? [21:59:26] MEAS-29 [21:59:35] that is 1/SQR3 [21:59:39] probably [21:59:51] ah, no [21:59:53] but you are close [21:59:54] or did they remove something there? [22:00:03] that is 1/SQRT3 being deleted due to the V67 changes [22:00:21] Kft999 took its place [22:00:28] so it had both of these constants there [22:00:36] as far as I can tell yes [22:00:39] which is silly :P [22:03:42] I'm really not seeing what the problem in P40 could be [22:03:57] LDPLANET could have still changed [22:04:17] Norton manual of course doesn't have that many changes there [22:05:08] yeah -- just the line that includes STAR->STARSAV3 [22:05:14] and it's impossible to say whether more than just that changed [22:07:05] could they have added VNPLAN23 later? [22:07:17] what would it have been instead? [22:07:30] they need to get the verb/noun 06 88 from somewhere [22:07:34] unless it wasn't 0688 [22:07:35] right [22:08:31] noun table in the Norton manual has a change for N88 [22:08:56] but that's just STARSAV3 I guess [22:09:01] yeah [22:14:22] Ugh it just keeps saying I am like 61 commits ahead even doing it fresh :( [22:14:41] Its from an older branch which I though I removed but it doesnt seem to agree lol [22:16:50] is there any way to reset a branch [22:16:58] you could delete it [22:17:30] and then set it up anew [22:17:40] if that doesn't delete something you want to keep [22:17:44] I guess I had to delete it on git [22:17:56] git files are in a hidden folder I think [22:17:56] I backed up changes elsewhere [22:18:18] you want a fresh Orbiter2016 branch? [22:18:24] I have one [22:18:28] Well, I did [22:18:35] I will get one [22:19:11] there is git reset, not 100% sure what it does though [22:19:28] so I cant quite remember the steps here [22:20:47] what exactly do you want to do right now? [22:21:20] ok so lets start from scrath [22:21:23] scratch [22:21:32] I have a fresh orbiter install [22:21:35] in that case [22:21:36] http://www.ibiblio.org/mscorbit/mscforum/index.php?topic=2864.0 [22:21:49] Yeah I followed that before [22:21:59] there was something different though I had to do [22:23:37] not sure what you mean [22:26:51] im not either haha [22:27:28] oh ok I think I remember [22:29:36] I want to checkout Orbiter2016 not master, correct? [22:29:51] yep, master is the NASSP 7.0 release [22:30:00] thats the difference [22:30:35] hmm [22:30:44] fatal: 'origin/Orbiter2016' is not a commit and a branch 'Orbiter2016' cannot be created from it [22:31:13] what was your command there? [22:31:19] git checkout -b master --track origin/master [22:31:24] but master replaced with Orbiter2016 [22:31:33] have you set up origin? [22:31:55] added and fetched [22:32:23] Hmm [22:32:31] but its only doing master [22:32:40] maybe you only fetched master [22:32:52] git fetch origin [22:33:01] I am trying to create a new Orbiter2016 branch though [22:33:08] yes [22:33:17] i did git fetch origin [22:33:21] ok [22:33:27] just to be sure [22:33:33] git remote -v [22:33:34] git fetch origin [22:33:36] oops [22:33:54] origin https://github.com/rcflyinghokie/NASSP.git (fetch) [22:33:55] origin https://github.com/rcflyinghokie/NASSP.git (push) [22:34:06] oh ok, origin is your own repo then [22:34:16] isnt that what it should be? [22:34:28] sure, of course you also want the main NASSP repository [22:34:40] e.g. called upstream [22:34:47] yeah I haven't gotten there yet [22:34:51] Still on that error [22:34:55] Should I just do master for now? [22:34:59] nah [22:35:12] ok so I am stuck on the checkout part [22:35:23] your clone won't know about that branch until you add upstream and fetch its branches [22:35:29] oh duh thats where I move to the next steps [22:35:38] you only have master [22:35:46] in your Github repo [22:35:50] only branch there is master [22:36:02] yeah I deleted Orbiter2016 [22:36:11] Was hoping to make it here [22:36:36] Or do I need to in github [22:36:42] but then you can't track origin/Orbiter2016, as it doesn't exist [22:37:13] ok created [22:38:26] I think I got it [22:39:55] boom [22:40:07] This branch is even with orbiternassp:Orbiter2016. [22:40:11] finally haha [22:40:39] well done [22:41:14] Ok so now another question, its now asking me if I want to retarget the project in VS [22:41:27] Thats a no, correct? Because it would change them? [22:41:35] not even sure what that means haha [22:41:54] oh, because you use VS 2019 [22:42:08] yeah, that's probably not a good idea [22:42:30] https://www.dropbox.com/s/9uyi502k8gdm2t4/Screenshot%202020-11-24%20174200.jpg?dl=0 [22:42:52] yeah, better keep the files as they are [22:43:18] it would be possible that a change you do works in 2019, but not in 2017 and gives a build warning or even error for us [22:43:50] no problem I have the option to not upgrade them [22:43:55] just making sure haha [22:44:10] before I log off, here a little fun fact. The S-IVB on Apollo 15-17 did a PTC roll on the way to the Moon. [22:44:28] because they of course wanted their own term for this, they called it "solar heating avoidance" [22:44:38] interesting [22:45:01] and the way it works was: Command a 30° change in roll angle so that the S-IVB stars a roll maneuver [22:45:04] I know they vented the tanks but was that to prevent anything remaining from outgassing or exploding? [22:45:17] the PTC I mean [22:45:19] and then a few seconds later they simply switched off the flight control computer, so that no further thrusters could fire [22:45:30] yeah I think so [22:45:30] lol, that's one way to do it [22:45:44] They didn't do the PTC on 13 and 14, maybe they didn't like the temperatures [22:46:40] one thing I had heard on the Apollo 13 FIDO loop is that the S-IVB did a few weird things, like a sudden 5 ft/s DV change [22:47:09] turned out to be that with the IU batteries getting weaker the control behavior started getting weird [22:47:09] yeah probably a pressure release [22:47:32] oh yeah maintaining battery temps for telemetry was also likely a reason [22:47:46] so it did random thruster firings or so, and the thrusters aren't coupled [22:47:51] so they impart a DV [22:48:05] that's why they added the capability to switch off the FCC on Apollo 14 [22:48:17] and then they used that to start the PTC on 15 and later [22:49:11] very interesting [22:49:18] the sudden DV change on Apollo 13 happened when the BOOSTER controller had gone home already [22:49:42] and Marshall didn't really have a night shift contact person for this lol [22:50:17] Haha when in the mission was that though? [22:50:27] 15-20 hours [22:50:30] Ah ok [22:50:42] I know later they told the crew at least the SIVB was on target still lol [22:50:55] they wanted the S-IVB to impact, but not really anything to do or control anymore [22:51:01] was running out of batteries anyway [22:51:13] How close was it to the Apollo 12 sensors? [22:51:15] I think they had a pretty large target radious [22:51:18] radius* [22:51:24] and it was within the radius [22:51:39] they thought of doing another APS burn for a course correction [22:51:48] but it couldn't be done [22:51:55] Batteries? [22:52:00] yeah, likely [22:52:16] once they found someone from Marshall he told them that [22:53:37] seems like it was more important to know exactly where the S-IVB impacted [22:53:47] didn't have to be super close to the sensors [22:54:32] Which makes sense [22:55:17] By comparing the projected impact point following lunar impact [22:55:18] burn, based on postflight tracking analysis, with the target coordinates, [22:55:18] it is seen that a miss distance of 115.6 km can be attributed to real- [22:55:19] time targeting. The movement of the impact point due to the anomalous [22:55:20] thrusting represents a distance of 149.5 km, moving the actual impact [22:55:20] point 50.1 km closer to the target. [22:55:43] good enough lol [22:55:57] haha the good side of the error [22:55:57] anyway, good night! Good to have you back, Ryan [22:56:02] Thanks I missed you all!