15年前のコード広告と新聞広告

マンモスの骨として古代のレガシーコードをサポートすることに関する翻訳された出版物を見たので、私は自分の経験から話を共有することはできますが、同時に、私のような人に書くように同様のタスクに直面するように促します。 そして、それは国家にとって残念です-なぜそのような出版物はほとんど翻訳されているのですか? 多くのナゲットプログラマーが、互換性のない独自のソフトウェア、独自のDBMS、グラフィカルインターフェイス、独自の設計の産業機器用ドライバーを作成しています。 職場では、地元のクリビンの作品をたくさん目にしました。興味がある場合は、それらについても説明します。



この話は2001年に起こり、FIDOカンファレンス$ CRACK $ .TALKSから始まりました。 、通常のコンテンツはクラック、クラック検索アナウンス、「終身」クラッカートークでしたが、誰がグラフィックプログラムの完成を引き受けることができるかを尋ねる非典型的な広告を見ました。 この会議では、ハードウェアキーを「分離」するなど、商用ソフトウェアを「ハッキング」することを好むため、商用ハッキングには関与しなかったため、この発表には注意を払わず、すでに個人のメールで宛先に連絡して、注文を履行します。 しかし、1週間後に発表が繰り返され、何が起こっているのだろうと思い、著者に連絡しました。



彼は、それはまさにグラフィックスプログラムの最終決定に関するものであり、会議に参加しているクラッカーは、彼らが話していることを学んだので、この作業を拒否し、プログラムを最終決定するのではなくハッキングに従事していると説明した。 その後、彼はさらに詳細を明らかにするために会うことを提案した。 彼が示した住所に着くと、オフィスの入り口で、有名なアナウンスの新聞の名前が書かれた看板を目にしました。



私に会った私の将来のクライアントは、地元のIT部門の責任者であることが判明しました。彼はすでに数年でしたが、会話から彼は「私たちのもの」であると感じました。 それから彼は私にその時21インチの巨大なモニターを備えたコンピューターに連れて行ってくれた。







似たようなGUIをはじめて見ましたが、それでもこのモノクロインターフェースは昔風に見えました。特にそのようなモニターの解像度が十分ではなく、ピクセルが巨大に見えたからです。



さらなる説明から、かつてMS Windows 2.0の競合であったGEM / 3デスクトップのファイナライズについて話していることを知りました。最新の商用バージョンは15年前です。 しかし、なぜそれを変更するのですか? 新聞は、GEM / 3の下でのみ実行されたVentura Publisherデスクトップパブリッシングシステムの古代バージョンを使用していることが判明しましたが、データベースから広告のテキストを受信することで新聞ページのレイアウトを自動化することが可能になりました-その時点では、他のシステムはできませんでした。







少しためらった後、私はこの仕事を始めました。 タスクは、1280x1024の高解像度ディスプレイ用にドライバーを完成させることでした。 いくつかのドライバがあり、異なるビデオアダプタ用および各解像度用のドライバがありました。 しかし、それらはすべて800x600以下の解像度をサポートしていたため、私が見たモニターには非常に大きなピクセルがあったため、フルサイズの新聞のレイアウトにはあまり便利ではありません。



当時はインターネットにアクセスできず、ドライバーのソースコードがパッケージに含まれていなかったため、クライアントからGEMからアーカイブを取得し、ドライバーがサポートする解像度を指定するすべての定数を見つけて置き換えるために、ドライバーのバイナリコードを選択し始めましたそれらを正しいものに。 私は成功しましたが、実際にはありませんでした。GEMはMS-DOSでリアルモードで動作し、ビデオメモリにアクセスするために、そのドライバーはビデオメモリバンクを切り替えました。 ここで定数を単純に置き換える必要はありませんでした。ビデオメモリのバンクを切り替えるためのコードを探す必要がありました-タスクは簡単ではありませんでした。 さらに、ドライバーは高度であり、ディスプレイにグラフィックをスローするためのインターフェイスを提供するだけでなく、グラフィックプリミティブ(線、長方形、円)を描画することができました。ビデオメモリの切り替えバンクと混合した描画コードはかなりわかりにくいものでした。 しかし、幸運なことに、ドライバーの1つがサポートするビデオアダプターは、通常使用されていないハードウェアポートにコマンドを出力することでビデオバンクを切り替えました。 1週間の作業の後(通常-主に夜間)、このビデオアダプターから800x600ドライバーに1280x1024で動作するように教えることができましたが、グラフィックプリミティブによってはレンダリングの不具合が発生しました。



そして、クライアントが私に電話して、彼がソース(!)GEMを見つけたと言った。 1999年にGEMを購入したCalderaがGPLの下でそれらをリリースしたことがわかりました。 各コードファイルの冒頭にはCalderaの著作権がありましたが、他のすべては15年前の元の形のままでした。







ソーステキストを自由に使えるようになったので、Cを少し混ぜたアセンブラーにあり、まだスパゲッティだった場所でも、作業はずっと速くなりました。







1週間後、すべての準備が整ったので、コンパイル済みの変更されたドライバーをクライアントに引き渡して、彼がそれらを試すようにしました。 そして一週間後、私は仕事の代金をもらうためにオフィスに来て、大きなモニターの高解像度スクリーンで作業する可能性のある機会に新聞の社内フォーラムに登場したレイアウトデザイナーの熱烈なレビューを見せられました。 さらに、判明したように、この新聞はモスクワや他のロシアの都市だけでなく、CIS全体にも支部を持っており、うれしそうなレビューがいたるところにありました。 そして、それは非常に素晴らしかったし、行われた仕事に対する寛大な支払いは、私が大学院生活を送っていた私の奨学金への堅実な追加になりました。



All Articles