アカウント名:
パスワード:
PC88用だっけ?フロッピーディスクコントローラーの仕様上、書き込めないけど読み込める組み合わせののデーター(FDCのコマンドになる)
FM-7シリーズのFDDコントローラがそういう仕様だったと思います。確か0xFDが書き込めない。それでもそれを書き込めてしまうCopyboyとかいうツールが出てきて、あれは何をやっているんだろうと不思議でした。まあ今知っても「ふ~ん」位にしか思わないでしょうが。
あと、高価なCADソフトではトングル挿さないと起動しないとかあるよ。
ドングル系は簡単なんですよ。チェッカーを見つけやすいので。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs
変なの (スコア:-1, フレームのもと)
イメージ戦略とマーケティングの成功例?
Re:変なの (スコア:5, 興味深い)
あと、高価なCADソフトではトングル挿さないと起動しないとかあるよ。
プロテクトを破られないように、コピー判定ルーチンを複雑に長くして対抗する方法もあった、
これから実行するコードを書き換えて進んだりして当時のデバック環境にとっては辛いコードを
とにかく長くするとかね。
もう、おぼろなんで間違っているかもしれないが・・
アップルIIの時は、いきなりRETで初めて何処に飛ぶのか分からなくすることから初めて古くからプロテクトが発達していましたね。
PC88用だっけ?フロッピーディスクコントローラーの仕様上、書き込めないけど読み込める組み合わせののデーター(FDCのコマンドになる)を書き込んでそのデーターがあるかどうかを判定に使ったり、特定トラックにデジタルじゃなくてアナログ波で記録して数回読み込んだらその揺らぎで値が変化することを確認して判定につかったりとあったね。
MSXでROMデーターをメインメモリに展開するタイプには、自己書き換えでプログラムを破壊するようなコードになっていた。
当時、解除して遊んでました。
95の頃だったかな? 囲碁ソフトを買ってCD-ROMを入れないと起動しないのがめんどくさいので、
CD-ROMを入れて下さいとメッセージボックスが出たところでVC++でブレークして、その場所から追って
機械語の判定ジャンプ命令を潰してCD-ROM無しでも動くようにしましたね。
仕事では逆に守る方もやりましたね。測定器でPCと外付けセンサーなんだけど、中国へ輸出するのでコピーできないようにして欲しいっていうので、
外付けセンサーのマイコンに本来PCで処理するコードを入れて(マイコンのコードを抜くのは無理)PCのソフトだけをコピーしてもどうもならないようにしました。 その後、末端の顧客から修理依頼でセンサー部を完全に全バラにされて帰ってきたそうで、リエンジニアリングして修理依頼をしてくる根性に驚きました。
Re:変なの (スコア:2, 興味深い)
チェックをつぶすために、ときに数k自分でコード書く必要がありましたねえ…。
>書き込めないけど読み込める組み合わせののデーター(FDCのコマンドになる)を書き込んで
>特定トラックにデジタルじゃなくてアナログ波で記録して数回読み込んだらその揺らぎで値が変化する
データ有データCRCエラーだとかコロコロフォーマットだとか。
セクタのID部ばかりいっぱい入ったトラックとか。
擬似的に再現するために、FDCリセットなんて技も。
ふつー使えないくらいトラック長が長くて、紙を挟んで無理矢理回転数を落として書き込んだのもあったような。
フロッピーにインデックスホールが2つ空いてるとか無茶なのは再現しようがないんで、
チェックをつぶすしかなかったですが。
>自己書き換えでプログラムを破壊するようなコードになっていた。
いやー、MSXに限らなかったでしょう。
ほんと当時は無茶な世界だったと思う。
Re: (スコア:0)
>いやー、MSXに限らなかったでしょう。
ROMをRAMカートリッジにコピーする時は使用時はライトプロテクト掛けるのが普通では?
Re:変なの (スコア:2, 参考になる)
と、あるように、本物なら自己書き換えが不能で破壊されずに実行。
メインメモリにROMデーター展開実行なら破壊されて実行不能という意味です。
MSXの初期のゲームは、8KB、16KB、32kBとかで、カートリッジROMとメインメモリのRAMがバンク切り替えで同じ物理アドレスになるのです、機種によりメインメモリのバンクの仕様が違う(仕様で不定)のでバンクの選択で判定するプロテクトは基本的には無理なのです。
このあたりは、BASIC+DATA文(ハンドアッセンブルした機械語(16進数))で組んで試したことがあります。
手持ちのソフト数本を2DDに入れてディスク起動で画面にメニューが出て、マウスかカーソルでゲームを選択して実行というふうにしました。 マウスカーソルは矢印がグラディウスのオプションみたいに残像が尾を引くように派手にしたりして・・(^^;
その頃は、ライトプロテクト付きRAMカートリッジなんて売っているのを見たこと無いですね。
その後、雑誌で見ました、そして市販化ですかね。
メガロム(1Mbit=128KB以上)とかの時代になるともっとややこしくなりますね。
カートリッジといえばMSXカートリッジ端子付きユニバーサルの生基盤+無銘カートリッジとか
売っていたので自分でi8251を乗せてシリアルポートを増設して遊んでました。
マイコンハードを学ぶのに最適なマシンでしたね。
今なら学生用のポケコンでZ80系を使ったものがあるので拡張端子から
Z80バスが生で出ているのがあるので、それで似たような勉強が出来るでしょう。
いや、今はそんなことしなくても、雑誌付録の基盤を弄るほうがいいかな。
Re:変なの (スコア:2, 参考になる)
FM-7シリーズのFDDコントローラがそういう仕様だったと思います。確か0xFDが書き込めない。それでもそれを書き込めてしまうCopyboyとかいうツールが出てきて、あれは何をやっているんだろうと不思議でした。まあ今知っても「ふ~ん」位にしか思わないでしょうが。
vyama 「バグ取れワンワン」
Re:変なの (スコア:1)
インストールしていていると、ネットワーク(AppleTalk)経由で相互チェックが掛かって、
プリントアウト時にアプリが強制終了するってのを聞いたことがあります。
なので、「今から印刷するから閉じてー」と作業場内で叫ぶ必要があったとか。
Re: (スコア:0)
プリントだけじゃなくて、起動すらできなかったような。
Re:変なの (スコア:1)
Re: (スコア:0)
ドングル系は簡単なんですよ。チェッカーを見つけやすいので。
Re:変なの (スコア:3, 興味深い)
ドングルの内容を元に実行バイナリの一部を改変して動的ロードするような方式で、なおかつデバッガを弾くプロテクトの処理にも、そのような仕掛けが施されているようなケースすら存在します。
できることなら、回答者よりも出題者側に回りたい・・・
Re: (スコア:0)
ソフト自体は無改造で済むし、ドングルが壊れた時にも役に立つ。
(特に某Quarkなんて有償交換な上に待たされてたし)
Re: (スコア:0)