スポンサーサイト

    上記の広告は1ヶ月以上更新のないブログに表示されています。
    新しい記事を書く事で広告が消せます。

    もしこの記事が参考になったなら拍手をお願いします

    HuCつまみ食い(5)

    そのうち試してみようと思いつつ気が付くと3年。やっと腰を持ち上げました。
    内容はHuCのOverlay機能を使った 小プログラムの統合です。

    具体的には過去に作った小プログラム達を1枚のCD-ROM2媒体に詰め込んで
    各プログラムを行ったり来たりする機能がOverlay機能になります。

    programSelectTest.jpg

    #行ったり来たりと言いながら、今回は行くだけで戻る部分は作ってません。
    #戻るときはリセットしてください。

    CDイメージを置いておきますので、興味のある方はダウンロードして
    焼いて実機で動かすなりエミュレータに突っ込むなりしてみて下さい。
    単に媒体統合しただけなので面白いものではないですが・・・

    [媒体イメージ pass:yakata]
    http://download.pce-repair.net/Prog/ProgramSelectTest_20160313.zip


    イメージに含まれているソフト2本の使い方は以下を見て下さい。

    [CD-ROM2ディスクの音楽再生プレイヤー]
    http://pcerepair.blog.fc2.com/blog-entry-103.html

    [コントローラの入力チェックソフト]
    http://pcerepair.blog.fc2.com/blog-entry-104.html

    以上、3年ぶりのHuCつまみ食いでした。

    スポンサーサイト

    もしこの記事が参考になったなら拍手をお願いします

    Huc Windows7 環境

    PCエンジンのプログラミング環境をXPからWindows7に移行したのでご報告しておきます。

    ただWindows7といえ32bitであり64bitではないので余り有効な情報ではないかもしれません。


    (1)ソフト一覧
       ・コンパイラ   HuC Ver3.21(DOS版)
       ・仮想CDドライブ DaemonTools Lite Ver4.49.1 (2014/03/13Release)
       ・焼きソフト   CloneCD Ver5.3.1.4
       ・その他     BatchGoo! (bmp→pcx変換)
                EDGE   (ドット絵お絵かき)
                Ootake Ver2.75

    (2)コンパイル手順に関して

       操作としてはソースを書いてコンパイルしてROMイメージや
       CD媒体として組み込むデータトラックイメージを生成します。

       コンパイル自体はバッチファイルを作って実行していますがOSが違っても問題なく動きました。

    S1403_105.jpg


    (3)テスト環境に関して

       仮想CDドライブ用に使っているDaemonToolsのバージョンを最新に上げたせいなのか
       OSが変わったことが原因なのか?切り分けてはいませんが
       Yameが仮想CDドライブを認識しません。体験版のMagicEngineでも同様でした。

       仕方ないので確認用のエミュレータはOotakeに切り替えています。

    S1403_002.jpg



    (4)各種バッチファイルに関して

       いざプログラミングしていると細かい操作がチョロチョロあり
       バッチファイルを用意してなるべく自動化しています。
       たいしたことは書いていませんが今回公開しておきます。

       ・ソースからPCエンジンのROMイメージを作成する

    S1403_103.jpg




       ・ソースからPCエンジンのデータトラックイメージを作成する

    S1403_104.jpg



       ・コンパイルで生成したファイルを掃除する。
        単に拡張子を指定してファイルを削除しているだけです。

    S1403_102.jpg



       ・データトラックイメージを更新する
        GUI上で行うと結構手数が多く面倒なのでバッチ化しています。
        DaemonToolsがコマンドラインで操作できるI/Fを持っているからバッチ化できるのですが。

    S1403_101.jpg


       ・エミュレータのOotakeをCDゲームとして起動する
        単に最初の起動画面をスキップしたいだけです。
        Ootakeのショートカットを作って起動オプションをいじる方法もあるのですが。。。

    S1403_100.jpg



    [補足]
     DaemonTools のコマンドラインオプションについては "/help" で呼び出すとポップアップで説明がでます。

    S1403_005.jpg



    てな訳でWindows7(32bit)環境でもPCエンジンのプログラミングが出来ることが確認できました。
    最初は仮想化したXP環境を利用することも考えていましたがWindows7での環境が出来たので
    XP環境はレガシーなUSB機器の利用のためだけに使う形になりそうです。

    以上、Windows7(32bit)でのHucのプログラミング環境でした。


    もしこの記事が参考になったなら拍手をお願いします

    HuCつまみ食い(4)

    PCエンジンも発売から20年以上経過し、
    言うことを聞かないコントローラも多々あるわけで。

    HuCの勉強がてらコントローラの入力状況を確認するプログラムを作りました。
    「つまみ食い(1)」のバージョンアップ版です。

    IMG_7263.jpg

    ・2ボタン、3ボタン、6ボタン、マウスに対応しています。
    ・マルチタップに対応し1P~5Pまで確認できます。
    ・ボタンを押すたびに画面中の「O」が移動するので連射スイッチの接触不良も確認できます。
    ・マウスを繋いだ場合、マウスを動かすと画面下の「館」が移動します。

    [注意]
     ・Super CD-ROM2規格なのでCD-ROM2で動かす場合はVer3以上のシステムカードが必要です。
     ・画面上で確認できるのは一つのコントローラなので
      他のコントローラを確認する際はSELECT+I や SELECT+II でプレイヤーを切り替えてください。
     ・マウスを脱着した後は必ずリセットをしないと認識されません。
     ・またマウスは単独で使うか、マルチタップの1Pに繋いでください。


    今までゲームを操作して接触不良の確認をしてましたが、
    これがあればゲームに振り回されず落ち着いてコントローラの確認が出来ます。



    今回もこのプログラム(CloneCDイメージ)を置いておきますので
    興味のある方はダウンロードしてCD-Rに焼いてみて下さい。
    (しかしCDイメージとは思えないほど本当に小さいです)

    http://kie.nu/B6Q
    PASS:yakata20121201


    2012.12.11 ダウンロード場所を変更しました。
    http://download.pce-repair.net/Prog/ControllerTest_20121201.ZIP


    ゲームを作る人から見ればプログラムの初歩の初歩のレベルのものですが
    これでもかなり頭から煙を出しながら作りました。難しいですね。

    以上、Hucつまみ食い(4)でした。



    もしこの記事が参考になったなら拍手をお願いします

    HuCつまみ食い(3)

    今回は特にテーマもないのですが、HuCの勉強がてら
    簡易的なCDプレイヤーを作ったのでご紹介でも。

    IMG_7231.jpg

    機能としてはごく単純なもので、PCエンジンのディスク、音楽用ディスクを再生するだけです。

    [十字キー]
     画面に表示されるトラック情報から再生したいトラックを選択。

    [Iボタン]
     十字キーで選択したトラックを再生する。CD-DAの音声トラックのみの再生で
     データトラックを選択しても再生はしません。

    [IIボタン]
     ディスクの停止。ディスクを入れ替える際に使用します。

    [RUNボタン]
     ディスクのトラック情報を再読み込みします。

    [SELECTボタン]
     再生する際のモードの切り替え。
     NORMAL :指定したトラックを1回だけ再生して終了
     REPEAT :指定したトラックを繰り返し再生
     MUTE  :再生はするが音は出さない
      



    プログラムCDを起動した直後はデータトラックが一つあるだけで、それ自体では何も再生できません。
    IIボタンを押し、ディスクを適当なディスクに入れ替えて、RUNボタンで
    トラック情報を読み込ませます。後は十字キーでトラックを選択してIボタンで再生です。

    IMG_7232.jpg

    試しにY's I・IIのディスクを入れてみます。

    IMG_7233.jpg


    IIボタン-->ディスク入れ替え-->RUNボタンでディスクを読み込ませたら
    Y'sのトラック情報が出てきました。2トラックがDATAトラックと認識されています。

    IMG_7234.jpg


    CDアクセスの勉強のために作りましたが・・・
    気に入った音楽はリッピングして聞く人ばかりだと思うので
    用途はそうそうないかも(笑)


    今回は作ったプログラム(CloneCDイメージ)を以下に置いておきます。
    興味ある方はダウンロードしてCD-Rに焼いて実機で動かしてみてください。

    http://kie.nu/A4z
    PASS:yakata20121124

    -- 2012.12.11 追加 --
    ダウンロード先を変更しました。
    http://download.pce-repair.net/Prog/PC-Engine_CDPlayer_20121124.ZIP
    -- ここまで --


    -- 2012.11.25 追記 --
    試用期間が21日となりますが、最新版である Ver5.3.1.4 のCloneCDで
    CD-Rに焼けることを確認しました。
    [CloneCD]
    http://www.slysoft.com/ja/download.html
    ------ ここまで ------

    なお最終トラックの長さの表示が00:00になっていますが、再生は出来ます。
    エミュレータ上だと最終トラックの長さはきちんと取得できるのですが、
    実機になるとうまく取得できないようです。。

    しかし今月からHucを触り始めましたが、GUIを一から実装したり、
    コントローラの入力をスムーズにするために
    入力にWAITを入れたりと結構面倒臭いですね(^^;;;

    自分が作りたい機能2割に対し、プログラムとして作りこむ最低限の基本実装が8割って感じです。
    でも基本機能を作りこんで土台を作らないとアプリは作れないし。。。
    最終目標はツール作成ですが、土台が出来上がる前に途中で投げ出すかも知れません。(^^;;;


    以上、HuCつまみ食い(3)でした。
    もしこの記事が参考になったなら拍手をお願いします

    HuCつまみ食い(2)

    前回Hucを使って試しにプログラムを書き、ROMイメージを作り、
    マジコンに流し込んでみました。
    ただこの形だとマジコンがないと辛いので、CD-ROM2ソフトのように
    CDの媒体で作れないか?とチャレンジしてみたというのが今回のネタ。


    予め言っておきますが私はプログラミングの専門家じゃありません。(^^;
    私より100倍詳しい人はいっぱいいますので
    質問は別の人に聞いてください。(聞かれてもわからないから)
    Cなんて10何年か前にチョロっと触った程度で
    ゲーム機のプログラミングなんて今回初めてだし。

    因みに私が勉強させてもらっているサイトは今は以下の3つです。
    http://page.freett.com/zerozero0/02/index.htm
    http://www.obeybrew.com/index.php?title=Main_Page
    http://www.archaicpixels.com/index.php/Main_Page

    と、クギを刺しておいて本題に戻ります。



    CD-ROM2の媒体を作るまでですが、まずはソースを作っておいて

    _main.jpg

    媒体に焼くためのデータトラックのイメージファイル(*.iso)を作ります。
    ソースをコンパイルしてオーバーレイのファイル(*.ovl)を作り、isolinkでISO化。

    参考までに私が使ったバッチファイルを載せておきますが
    合っているかどうかは解りません。

    bat.jpg

    バッチファイルを動かすことでデータトラックのイメージファイル(*.iso)が出来ました。
    今度はこれをCDイメージにする必要があります。

    ここでDaemonToolの出番です。

    但し、画面を見るようにかなり古いバージョンを使っています。
    最新のDaemonToolを使うとうまくリッピングや焼きこみ
    が出来なかったためです。

    DaemonTool.jpg

    またデータトラックのイメージファイルから最終的なイメージにするにはCUEシートが必要。
    なのでこんな感じでメモ帳で書きました。PCエンジンの媒体と同じように
    トラック1は音声データで「再生しないで下さい」の警告を入れ、
    トラック2は前述したデータトラックのISOイメージにしています。

    cue.jpg

    これでDaemonToolsで仮想ドライブとしてマウントできました。

    今回、ソースに音声トラックを再生する機能をちょこっとだけ追加したので
    CD-DAがきちんと聞こえるようにエミュレータはYAMEでなくOotakeを使っています。

    _ootake.jpg

    プログラムはバグだらけですが、とりあえず
    仮想ドライブ+エミュレータで動くことは確認できました。

    さて、今度は実際にCD-Rに焼いてみます。
    私はCloneCDでいつも焼いていて、DaemonToolsと同様にこれもかなり古いバージョン。
    仮想ドライブのディスクをCloneCDで再度イメージ化して、CD-R(700MB)に焼きました。
    (因みにCD-RWは実機では認識しないのでCD-Rを使ってます)

    CloneCD.jpg

    そして出来上がった媒体がこれです。

    IMG_7108.jpg

    果たして動いてくれるでしょうか。ドキドキものです。

    IMG_7102.jpg

    おぉ。エミュレータと同じようにTV画面に出てきました。うれしいですね。

    IMG_7103.jpg

    バグは色々ありますが、今回の目的は
    CD-ROM2媒体を自作することなので・・・とりあえずよしとしてます。(^^;


    因みにこの方法があっているのかどうかは私もわかりません。

    長年プログラミングをしている方たちから見れば
    笑われる内容かも知れませんが、まずは自分なりに試してみたということで。。。


    以上、「CD-ROM2媒体を作ってみた」でした。

    もしこの記事が参考になったなら拍手をお願いします

    | NEXT>>

    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。