タグ

ブックマーク / codeknowledge.livedoor.blog (11)

  • Z80 を C# で再現する - 準備 : プログラミング指南 - Code Knowledge

    Exomizer は圧縮率で ZIP をも凌ぐ大変優れたソリューションです。欠点としては解凍速度が遅いことですが、絶対的な圧縮が欲しい時は、これの選択が唯一無二とまで思っています。例えば、データロードの時間を短くする時も、Exomizer を使って圧縮すれば、その後数秒の展開時間を待つだけで、場合によっては何分も短縮することが出来ます。 Exomizer は 2024/08/18 現在は、バージョン 3.1.2 が公開されています。 検索すると嘘 URL がヒットしますのでご注意ください。上記リンクは正しい URL となります。ダウンロードすると圧縮ツールや Z80 等の解凍処理アセンブラソースが同梱されてたりします。が、残念ながら Z80 のソースは LGPL 2.1 で、ちょっと使うのは大変困るライセンスとなっています。Z80 のソースは大変使いやすい zlib license でun

    Z80 を C# で再現する - 準備 : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2024/08/21
  • PC-6001開発環境整備/ソフトウェア編 : プログラミング指南 - Code Knowledge

    プログラミング指南 - Code Knowledge ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。 前回のハードウェア編からの続きとなります。 続きのクロス開発環境の記事もあります。 PC-8001 の時と同じく、開発そのものは実機ではなく Windows上でのクロス開発環境を整えます。以下の手順で開発を進めます。 z80 テキストエディタでZ80のプログラムを記述する。bin アセンブルする。エラーがあればなくなるまで修正する。p6 エミュレータで実行確認する。必要に応じて p6 形式に変換する。wav 実機で動作確認する。問題なければメディアに記録して完成。 上記作業に必要なソフトウェアを紹介します。 テキスト

    PC-6001開発環境整備/ソフトウェア編 : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2024/05/28
  • 著作権と契約 : プログラミング指南 - Code Knowledge

    なかなか良くできたスイカゲーム系のwebコンテンツがありました。ただ、ちょっとばかり違法な感じでしたが、やっぱり先日webから消え去りました。作者は元ゲームが大好きだったんだろう事はよく分かったのですが、一線を超えてしまったからには、権利保持者からは注意喚起が飛んだのだろうと思われます。では、ちょっとここで思いつくままに、著作権と契約について書き連ねたいと思います。 なお、今現在の厳密な著作権の内容と、私が知っている内容に齟齬が生じている可能性は否めないのでそこはご容赦ください。厳密な内容を求める場合は、下記のリンクを参照してください。https://elaws.e-gov.go.jp/document?lawid=345AC0000000048 著作権簡単に言いきってしまえば、これは法律です。国際条約により各国で共通に保護されています。だから絶対的に守らなければならないのです。著作権には

    著作権と契約 : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2023/11/12
  • C# ベクトル移動 : プログラミング指南 - Code Knowledge

    プログラミング指南 - Code Knowledge ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。 前回でメインループの基形が出来たので、このまま次はプレイヤーを動かしてみたいと思います。プレイヤーを動かすのに、上下左右では味気がないので、ここはベクトルを使ってアナログ的に移動させてみます。内容に関しては今回も、前回の続きとなりますので、直接こちらに来てしまった場合は、前回の記事を参照してからお読みください。

    C# ベクトル移動 : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2023/10/25
  • C# 2Dゲームの画面描画 : プログラミング指南 - Code Knowledge

    プログラミング指南 - Code Knowledge ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。 今回は、リクエストがあった VS2022 の C# だけでゲームの画面表示を、どうやって実装するかの手順説明となります。簡単ではありますが、細かく説明したために少し記事が長くなっています。まあ、DirectX 使うという選択肢とかもあるんですが、簡単なゲームなら C# .NET のそのまんまでもさほど問題にはならないですね。今時の PC 能力は当に凄いと思います。 Visual Studio 2022 にて Windows フォームアプリで新しいプロジェクトを作成します。プロジェクト名はここでは GameTest

    C# 2Dゲームの画面描画 : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2023/10/14
  • Z80 タスク管理 : プログラミング指南 - Code Knowledge

    プログラミング指南 - Code Knowledge ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。 先日 X (Twitter) でこんなポストを頂きました。 Z80関連の情報を収集していたら、内藤さん(@NAITOTokihiro)の記事がヒット😃https://t.co/JcQKSeTLpn ループは速い方が嬉しいですよね😆 ということで、自分も考えてみました☺️ 数値上はDJNZより速い12clockですけれど、メモリーウェイトは如何程に影響あるものなのでしょうか…🤔 pic.twitter.com/fotBvfVn3Y — D.M.88 (@DM46374635) September 29, 2023

    Z80 タスク管理 : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2023/09/30
  • 私の開発言語の遍歴 : プログラミング指南 - Code Knowledge

    私はこの40年でいろいろな言語を弄ってきました。ここでは昔を振り返りながら、その経験と感想を語っていきたいと思います。多少記憶が曖昧な部分はご容赦ください。 ※ 以下、殆どモザイクが入ります。 私が一番最初に触れたパソコンらしいパソコンと言えば MB-6880L2 です。名古屋の矢場町という場所に当時存在していたカトー無線電気館という場所に展示されていたのを、マニュアルを見ながら BASIC プログラムをぽちぽちと入力して、画面の端から UFO が飛んでくるだけの簡単な内容でしたが、それでも大変感動したのをよく覚えています。 次が MZ-80K です。名古屋の今池にあったユニーの家電売場で展示されていたのが MZ-80K でした。自由に弄らせてもらえたので、学校帰りにぽちぽちとプログラムを作ってました。基的には BASIC でしたが、敵を複数動かす部分は直接マシンコードを入力してました。

    私の開発言語の遍歴 : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2023/04/27
  • ALG 敵移動の考え方 : プログラミング指南 - Code Knowledge

    プログラミング指南 - Code Knowledge ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。 ゲーム制作において、かなり悩ましい問題はこの敵の移動処理です。今回はゲームのタイプに関わらない移動処理について、そのおおまかな考え方について私の実装方法を解説していきます。なお、移動とともに繋がりの深い表示と消去については、日を改めて記事化できればと考えています。 直進と方向転換 まず敵の位置を X,Y とします。そして、敵の進行方向を dir で表します。昔のゲームでは上下左右の4方向が大多数でした。これは X と Y をそれぞれ ±1 すれば位置が変更出来るため簡単だったからです。8方向だと斜め方向は ±0.70

    ALG 敵移動の考え方 : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2023/03/13
  • 私がゲーム業界に入るまで : プログラミング指南 - Code Knowledge

    プログラミング指南 - Code Knowledge ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。 自分が子供の頃は、はっきり言ってド阿呆に分類されてました。5段階評価の通信簿の平均が 3 未満で、5 はひとつもなく 1 はちらほらという状態でした。覚える系が特に苦手で、応用とか創作系はどちらかと言えば得意だったかな。図工で針金をコネてひよこを作ったのは覚えています。 小学校時代はテレビゲームは存在していなかったので、外での遊びは…ちょっと変わってました。板に釘を打ち付けて、ピンボールのようなモノを作って、ビー玉が外れたら私のもの、ポケットに入ったら2個とか3個とか払い戻すような事をしていました。室内だと紙にひたす

    私がゲーム業界に入るまで : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2023/03/08
  • Z80 自己書き換え : プログラミング指南 - Code Knowledge

    プログラミング指南 - Code Knowledge ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。 私は昔から Z80 でプログラムを組む際には自己書き換えという手法を好んで使ってきました。これを使い始めたきっかけは覚えていません。おそらく、当時の内藤時浩クンはこの手法を知った時に「おおおおお!?」と強い感銘を受けて魂に刻み込まれてしまったのではないかと思います。今回はそんな漢のテクニック、自己書き換えについて解説したいと思います。

    Z80 自己書き換え : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2022/09/15
  • FDのコピープロテクト : プログラミング指南 - Code Knowledge

    プログラミング指南 - Code Knowledge ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。 レトロPCは最初は安価なカセットテープを記憶媒体として使っていました。その後に登場したのがフロッピーディスク(以下FDと略す)です。カセットテープが何分もロードに必要なところを数秒から数十秒で完了し、かつ、ランダムアクセスが可能なFDは、当時は高価な周辺機器だったにもかかわらず、あっという間に一般に浸透していきました。また、ドライブの価格も一気に値下がりしていったのを覚えています。 ところが、この便利なFDは便利であるが故の問題を抱えていました。それが不正コピーです。ゲームソフトハウスが発売した製品も、簡単に複製でき

    FDのコピープロテクト : プログラミング指南 - Code Knowledge
    Wacky
    Wacky 2022/05/20
  • 1