UWSC - ログ出力 (logger) 関数を定義

ときどき、自宅で UWSC を使うのだけれど、たまに使いまわしたい関数があるので備忘的に記録。

 次の関数は、print 文で出力するもの。

function logger(String)

// ログ出力

GETTIME()
    date = "" + G_TIME_YY4 + "/" + G_TIME_MM2 + "/" + G_TIME_DD2
    time = "" + G_TIME_HH2 + ":" + G_TIME_NN2 + ":" + G_TIME_SS2
    Print date + " " + time + " " + String
    Result = 0
fend

使い方は、こんな感じ

    logger ("ログ出力したい文字列")

> 自分への課題
・秒の単位は、1桁~2桁で揃わないので、あとで桁あわせをする処理を追加しておく。
→ 変数名を G_TIME_SS から G_TIME_SS2 に変更するだけで良かった。
・print 文で出力したものは、一度停止したあと、また起動したときに消えてしまうのでログファイルに追加するように処理を変更する。

今回は時間がないなかったので、これで。

追記。
実際にファイルへ追記しているタイプの logger を作成。
出力パスは、dim で定義してもダメみたい。
Const で定義してから function を使うか、logger 関数内部で定義するかしないと、出力されなかった。

Const sLogDir = "c:"
Const sLogFile = "uwsc.log"
Const sLogPath = sLogDir + "\" + sLogFile

logger ("サンプル")

function logger(String) 
	// 実行時刻の取得
	GETTIME()
	date = "" + G_TIME_YY4 + "/" + G_TIME_MM2 + "/" + G_TIME_DD2
	time = "" + G_TIME_HH2 + ":" + G_TIME_NN2 + ":" + G_TIME_SS2

	// ファイルを開く
	fid = FOPEN(sLogPath, F_READ or F_WRITE)

	// ログ出力実行
	FPUT (fid, date + " " + time + " " + String)

	// ファイルを閉じる
	FCLOSE(fid)

	Result = 0

fend

注意点としては、ディレクトリが存在しないとエラーで終わるよっていうこと。ディレクトリの有無を確認するエラー処理を入れると汎用性が増す気はする。
個人が使うスクリプトが、そんな前提情報を満たさない*1とかありえない気もするのでエラー処理はいれていない。

*1:必要なディレクトリなら、実行前に自分で作っておくよね?

工作

前日のヘッドライト取り付け作業。

 

まずは、ステーの穴あけ。

f:id:KuroNeko666:20190414120301j:plain

金具(ステー)の穴あけ

8mmの穴と、10mmの穴をそれぞれ。

 

 

f:id:KuroNeko666:20190414120901j:plain

既存ヘッドライト取り外し

既存のヘッドライトを取り外す。

並べてみる。

f:id:KuroNeko666:20190414121231j:plain

ヘッドライトの大きさ比較

もう少し置く位置を調整すれば良かったかな。

左が新しく付けようとしているヘッドライトだけど、細身かつ長い。

f:id:KuroNeko666:20190414131156j:plain

仮設置

配線加工前に、仮設置。

やっぱり奥行がギリギリ。

 

f:id:KuroNeko666:20190414140005j:plain

エンジン始動時のヘッドライト

さくっと配線加工を終わらせて、エンジンをかけてみる。

配線自体は、同色のケーブルをギボシ端子を使って繋いであげるだけなので、特筆することなし。

光の向きは、夜にならないと調整できないな……。

f:id:KuroNeko666:20190414142637j:plain

取付完了

取り付けのために外していたカバー類も戻して、取り付け完了。

 

夜になってみて光り方を確認してみたけど、Hi と Lo が逆だった……。

中の LED を180度回転させたけど、うーん……。

狙ったところに光が当たらない。

Lo は、光を当てたいところの下側で、Hi は、光を当てたいところの上側。

なんぞこれ。

 

イメージ的には、こんな感じ。

f:id:KuroNeko666:20190423070820p:plain

光の当たり方

上のものが、ノーマルの照射範囲。

今回付けたのは、下のような照射範囲をしていて、使い難い。

 

常に Hi がちょうどいい場所で使うために、Lo は足元を照らしているような位置で固定。

いいや。Hi / Lo なんてなかったんや。

同じ 30/30w でも、今までよりは明るく感じる。

ただ、アイドリング時には明滅するような挙動をするし、オススメはできないかな。

 

他に良い点としては、ノーマルに比べて各段に整備しやすい。レンズを外す作業なんて、深く考えずにネジを回せるのがいいね。

Magna50 へのヘッドライト取り付け案

Magna50 自分メモ

手持ちのヘッドライト

 

 

これに、バイク用LEDランプを取り付けたい。

 

 

すでに両方とも持っていて、ヘッドライトには LED ランプをむりくり内蔵させた。

配線を少し加工すれば、光らせることが出来るのは確認済み。

 

で、このヘッドライトを Magna50 に取り付けたい。

下調べしてみた。

f:id:KuroNeko666:20190413212531p:plain

ノーマルヘッドライトの取り付け図

うん。取り付けられているネジは、8mmだった。

でも取り付けたいヘッドライトは、取り付けネジが 10mm のもの。

f:id:KuroNeko666:20190413212652p:plain

取り付けたいヘッドライト

Magna50 のヘッドライト取り付け部分のネジ穴は、8mm しか入らない。

取り付け穴を 10mm まで拡張したところで、約 165mm と示されているライトは長すぎて本体に干渉する。

 

じゃあ、どうしようか。

f:id:KuroNeko666:20190413212733p:plain

自作ステーの構想図

ステーを自作するしかないでしょう。

 

ということで、今日は自作ステーに出来そうな金具を探してたら夜に……

工作は明日やろう。

 

一応、良い感じの L 字型金具を見つけたので、これで試そう。

配線も少し加工しないとなぁ……

 

謎なトラフィック

4/10 23:00 から続いていた、謎のトラフィック

気になって、4/13 00:00 頃に Wi-Fi ルータの電源を切った。

 

この期間、日中は仕事で家にいなかったのでスマホは繋いでいないし、自分が何か接続してたとかは無かった気がする。少なくとも、Wi-Fi に常時繋いで何かする機械は置いた記憶がない。

 

というか。

自分が寝ていた時間に My docomo へログインしたという通知が来て、怪しいアクセスを探していて妙なトラフィックを見つけた次第。

それで電源を切ってからトラフィックが消えたので、Wi-Fi に誰かが不正アクセスした可能性まである。

困ったね。

とりあえず、My docomo のパスワードは変更しておいたけど、パスワードが漏れてたら嫌だなぁ。

パスワード管理ソフトに登録しているアカウント数が、もう 100 を超えてるんだよ。

 

閑話休題

 

トラフィック自体は、ワイヤレスLANから入ってきているのが分かる。

f:id:KuroNeko666:20190413124542p:plain

謎のトラフィック

スイッチから見て、ワイヤレスLANから入ってきた(Inbound)トラフィックは、そのまま PC や Internet へ抜けていた (Outbound)。

 

f:id:KuroNeko666:20190413125216p:plain

PC側へのトラフィック

 

メインPC側で、期間の前から 4/12 1:00 頃までずーっと続いている Inbound トラフィックは、NAS にある画像のまとめファイル(zip)を、Honeyview というソフトで開きっぱなしにしていたので見えているもの。貼り付けはしないものの、NAS 側へのトラフィックと合っているので問題なし。このソフトが何を読みこんでいるのかは興味あるけど、またそれは別の話。

メインPC側も、インターネット側も、(Inboundが見えないくらい) 入ってきていないので、そちらからのアクセスではないことは分かる。

f:id:KuroNeko666:20190413125349p:plain

インターネット側へのトラフィック

小さいトラフィックはあるけど、Windows 端末は自分のアクセスに備えて常時起動しているし、メールクライアントが定期的にメールチェックをしているので、多分それだろう。

直近の大きな山は自分のアクセスであることを認識しているので、問題なし。

動画って、大きいよねぇ……。

 

Wi-Fi ルータからのアクセスであることは間違いないと思っているけど、それがどんな種類のアクセスなのかは、現状では謎。

Wi-Fi ルータの自動アップデート?

何年も設置してるけど、いままでそんな兆候はなかった。

むしろ経年劣化で壊れた?

その可能性は否定できないな……。

 

しかし、自宅に Wi-Fi がないと不便だね。

新しいものを購入するか?

 

スキミング防止カードの自作(5円くらい?)

今度の職場では、食堂で昼食に Edy での支払いを行う必要があるらしく、「用意するならお早めにネ」と言われた。

もちろん、現金でも OK なんだけど、どうも割安な食堂が使えないため他の普通~割高な昼食代がかかりそうとのこと。

コンビニで Edy カード買えたはずだよね……と思って、近くのコンビニへ。たまたまファミマだった。

楽天 Edy ギフト」という、ちょっと可愛げなパンダのカードが置いてあった。これ、ちょっと調べたら 2017 年 12 月 5 日から、東京都のファミマ限定で置いてあるみたい。

www.paymentnavi.com

職場の人は、自分で購入したとき発行にお金がかかったって言ってたけど、何年前なんだろうか。

それでも、ゲーセンで Edy カード (楽天 Edy になる前) を手数料なしで入手できてたんだけどな。

……とか思いながら、手数料なしで Edy カードをゲット。

チャージは、ファミマポートでやらなければダメだったけど。

 

まぁ、それはどうでもいい。

必要になったから入手したんだけど、カードは携帯せねば使いたいときに使えない。

ということで、スマホケースに入れて持ち運ぶことにした。

財布は忘れることがあるんだよね……おサイフケータイばっかり使ってるから。

 

ちなみに、Edy アプリを使わなかったのは、以前コンビニで iD と Edy を聞き間違えられて支払いが面倒に思ったから。両方入ってるからどっちでも支払えてしまうんだけど、ポイントの変換率が違う。

 

閑話休題

 

ノートタイプのスマホケースに入れて、普通にカバーを裏側に畳み込んだ時に、ICカード残高読み取りを行う、謎の挙動が。

カバーに入れてた Edy カードに、スマホ本体が反応したからだった。

Edy カードをスマホケースに入れている限り、スマホを使うときは、ICカード残高読み取りアプリを閉じるちょっとした手間が発生して、だんだんとストレスに。

あ、これってある意味スキミングだよね。セルフだけど。

 

という、長めの前振りを終えて本題へ。

いろいろ考えた末、スキミング防止カードを自作してみた。

 

材料は、3つ。

・厚紙

・アルミホイル(クッキングホイル)

・糊 (使用したのは手持ちのスティックのり)

 

厚紙は、楽天 Edy ギフトの台紙(Edy カードが貼り付けられていたもの)で十分。

それを、スマホケースに入れられるサイズで切って、糊を満遍なくつけてアルミホイルを貼り付けた。

これくらいのサイズなら、アルミホイルを両面に貼り付けても余分が出た。

仕上げに、この余分なアルミホイルを切り取る。

 

スキミング防止カードの作成は、以上!

 

アルミホイルって、一番安いものだと 25cm x 8m で100円もしない。つまり 8 cm で 1 円もしない。

使いたい量は名刺サイズなので、800 cm のうち、10 cm 程度と考えると、糊の塗り面積を考えても、材料費 2 円もしないよね。

 

これを Edy カードの下に敷くと、あれほど煩わしかったスマホケースの開閉による Edy カードのスキャンが、ぴたっと無くなった。

試しに自作スキミング防止カードありとなしとでベタっとスキャンさせてみたけど、アルミホイルはいい仕事してました。

 

最初、0.5mm の厚さのアルミ板が 100mm x 100mm で 100円くらい(Edy などの ID は、規格が 85.60 mm x 53.98 mm)なので、カッターで適切なサイズに切り取ってエッジ処理(紙やすりでスリスリ)しようかとも思ったけど、もっとお安くできた。

アルミホイルはちょっとくしゃくしゃで見栄えが悪いけど、見えない場所だし、満足。

 

 ……よく考えたら、スキミング防止カードというより、電波干渉防止シートと呼んだ方が良い気がしないでもない。

EmEditor の価格改定か

「Emurasoft Newsletter」で、永久ライセンスの価格改定を行う旨、メールが届いた。

で、最初の一文。

 

弊社におきましては、2012年の永久ライセンスの開始以来、2015年の円安ドル高の影響による価格改定を除き、永久ライセンスの価格は据え置いてまいりました。

 

……それって、普通の会社の考え方だと除かないよね?

っていうか、わざわざ言及しないよね?

 

円安ドル高の影響による価格改定なら「円高ドル安になったら安くできますよ」っていうメッセージも受け取るんだけど、その辺どうなんだろう?

とりあえず、2015年のメッセージは見た。

価格改定のお知らせ – EmEditor (テキストエディタ)

 

うーん、お金を稼ぐのは悪いことではない。

でも、商売としてのうさん臭さが酷い。

 

で、本文にもどって、もう一つ気になった表現。

 

諸経費は高騰し、開発とお客様へのサービスを継続するためには、やむをえず、価格を調節する必要があります。

 

誰に言い訳してるんだろう?

これからの購入者?

 

EmEditor の品質と品質向上は称賛に値するし、それに対してお金を払うことを厭う積りもない。

でも、諸経費という言い訳がましい文面を見るに、裏側には「贅沢したら生活レベル落とせなくなった」という、疚しさが見えるようで……

 

永久ライセンス1本の価格を 18,000円から 21,600円 (税別) に改定

 

ただ、円安ドル高で調整したぶん、円高ドル安で儲けたんじゃないのかな?

その分のお金はどこへ消えたの?

わざわざ過去の値上げを自分で晒しておいて、それを別に考えるから値上げよろしくねって言われても、同意を貰える可能性はかなり低いと思うよ。

消費者としては「見通しが甘かったです」って言われているのと変わらない。

 

技術者としては優秀だと思うんだけど、経営者としてみると微妙だよね。若手ベンチャー企業がやるような失敗文書にしか読めん。