大晦日

 昼起床。昼食は焼き飯とポタージュスープ。
 自宅のメイン録画PCからHDD容量不足警告メールが来てたので暫定的に不要な番組を削除、あとは映画などの容量が多いものからメインNASに転送。ついでに昨晩ネットdeダビングで転送されたタイトルのフォルダ整理とか。
 3時にお茶。
 radikoの録音スクリプトで番組表を取得するために日付計算が必要で、そこだけVBで書いて呼び出すのが気に入らないので、過去に作った日付計算の処理を使おうかと思ったけど、自作の式で長々と書かれているので綺麗にしたいと思い、フェアフィールドの公式を使ってみる。

IF %M% LSS 3 (
    SET /A Y=%Y%-1
    SET /A M=%M%+12
)
SET /A S=365*%Y%+%Y%/4-%Y%/100+%Y%/400+306*(%M%+1)/10+%D%-428

 ただ、色々調べてみるも逆の公式が見つからない。てな訳で、日付と日数の相互変換について書いてあるものを探したところ、地デジなどの規格であるARIB STD-B10の付録Cに記載されているものを見つけた。
 修正ユリウス日なので西暦1年1月1日からの日数ではないのと、式の都合上から1900年3月1日より前には対応できないけれど、特に困ることはないので早速実装してみた。678576を足すと西暦1年1月1日からの日数になる。

IF %M% LSS 3 (
    SET /A Y=%Y%-1
    SET /A M=%M%+12
)
SET /A J=14956+%D%+(%Y%-1900)*36525/100+(%M%+1)*306001/10000

 修正ユリウス日から日付を求めるものも実装してみた。

SET /A Y=(%J%*100-1507820)/36525+1900
SET /A M=(%J%*10-149561-(%Y%-1900)*36525/100*10)*1000/306001-1
SET /A D=%J%-14956-(%Y%-1900)*36525/100-(%M%+1)*306001/10000
IF %M% GTR 12 (
    SET /A Y=%Y%+1
    SET /A M=%M%-12
)

 夕方にDEENが来訪。少し前に買ったというASUSのゲーミングノートPCを持ってきたので、ダイニングにLANケーブルを這わせてくれってことでテレビラック上のHUBの空いてた1ポートから何とか配線。
 冬新番組のタイマー入れ作業の続きを行う。何とかEDCB系のんは全部終わった。
 晩御飯は豆腐と肉の鍋。
 ひたすら冬新番組のタイマー入れ作業の続き。今度はEPGStation系の方。こちらも何とか全部終わった。
 Coke ONのチケット2枚の期限が今日までだったのでお出かけ。近場の自販機でコーラとファンタグレープを査収して帰宅。
 夜9時半くらいに年越しそばを食べる。
 久々にPSO2にログインするかとGPD WIN起動したら当然のようにWindows Updateの嵐で死ぬほど待つハメになり、その後もPSO2のアップデートダウンロードで死ぬほど待つハメになり、結局年明けたところでやっとこさログインしたらサーバトラブルで入れず仕舞い(汗)