Skip to content

Instantly share code, notes, and snippets.

let eop =
frameshift::provider::CelestrakProvider::from_csv(std::fs::File::open("EOP-All.csv")?)?;
println!("J2000 = {}", frameshift::time::epoch::J2000.to_tai());
println!("J2000 = {}", frameshift::time::epoch::J2000.to_tt());
println!(
"J2000 = {}",
frameshift::time::epoch::J2000
.to_tai()
.to_utc_with(&eop)
fn main() -> anyhow::Result<()> {
let lines = vec![
"ISS (ZARYA)",
"1 25544U 98067A 24285.74177330 .00036177 00000-0 64514-3 0 9990",
"2 25544 51.6390 98.0883 0008472 63.6655 27.1997 15.49693494476628",
];
let home = satkit::ITRFCoord::from_geodetic_deg(0.0, 0.0, 268.9);
// parse TLE
@agrif
agrif / rv32i.py
Created September 23, 2024 05:08
import risky.test
class LUI(risky.test.UnitTest):
PROGRAM = """
lui a0, 1
one:
lui a1, 0xfffff
fs:
@agrif
agrif / test.py
Created September 22, 2024 23:55
class LUI(UnitTest):
PROGRAM = """
lui a0, 1
one:
lui a1, 0xfffff
fs:
lui a2, 0xabcde
letters:
#include <stdint.h>
#include <stdlib.h>
#include <stdbool.h>
extern void busy_loop(void);
extern volatile uint32_t LEDS;
extern volatile struct {
struct {
#include <stdint.h>
#include <stdlib.h>
#include <stdbool.h>
#include <stdio.h>
extern void busy_loop(void);
extern volatile uint32_t LEDS;
extern volatile struct {
#include <stdint.h>
#include <stdlib.h>
volatile uint32_t* LEDS = 0x10000;
extern void busy_loop(void);
#define DATA_AMOUNT 128
uint8_t big_honking_data[DATA_AMOUNT] = {0};
#include <stdint.h>
uint32_t* LEDS = 0x10000;
extern void wait(void);
void main(void) {
while (1) {
*LEDS += 1;
wait();
@agrif
agrif / zones.txt
Last active August 17, 2024 17:14
This file has been truncated, but you can view the full file.
Area {
name: "Dun Morogh",
intro: Sound {
volume: 0.0,
items: [],
},
day: Soundscape {
ambience: Sound {
volume: 0.69,
items: [
MP
4b8101005a7c0100c500468130812781
b0807d7fdb7f3c7f227f6b7eb57e817d
3a7eaf7de87c9a7d537d687c887c057d
ee7c0a7c657cc97cf37c827bd57bce7c
367ceb7cc07cf37cb27c267d817cf87b
c07c447c357d2e7d2f7d157d7a7ca57c
5d7d767d777d7c7d457d9b7c8a7cd17c
fd7ca27dd77dd37dbe7d877dfb7cc57c
107d957dbf7df97d387e427e237ef57d