More bugs at work.
More calendry at home.
I've got time calculations working to my satisfaction, which, importantly, includes LS. From that, I can work out what day of the year it is, and from that the date. Intercalation is a bit of a pita, but I'm going to use the same scheme the Darian calendar uses - I'm mostly just using the Darian calendar anyway, with better names. I am having some trouble deciding the best way to determine when the year begins. First, I think about starting it from LS=0, but with more than half a solar day to spare in the tropical year, that's unreasonable. It /would/ eliminate the need for intercalation, but, no. So, I need to calculate it. So, do I go all the way back to the epoch, defining a zero point where it was midnight at the meridian as close to LS=0 as possible, and compute integer sols since then? Inconvenient, particularly if I use something like the Darian epoch, which is ca 1609CE. And impossible if I want to use this in a system that uses 32bit time integers. So, probably best to compute a set of snapshots, as it were: if the unix seconds are greater than x, count from y, etc. That's probably the best way to go.
More calendry at home.
I've got time calculations working to my satisfaction, which, importantly, includes LS. From that, I can work out what day of the year it is, and from that the date. Intercalation is a bit of a pita, but I'm going to use the same scheme the Darian calendar uses - I'm mostly just using the Darian calendar anyway, with better names. I am having some trouble deciding the best way to determine when the year begins. First, I think about starting it from LS=0, but with more than half a solar day to spare in the tropical year, that's unreasonable. It /would/ eliminate the need for intercalation, but, no. So, I need to calculate it. So, do I go all the way back to the epoch, defining a zero point where it was midnight at the meridian as close to LS=0 as possible, and compute integer sols since then? Inconvenient, particularly if I use something like the Darian epoch, which is ca 1609CE. And impossible if I want to use this in a system that uses 32bit time integers. So, probably best to compute a set of snapshots, as it were: if the unix seconds are greater than x, count from y, etc. That's probably the best way to go.