LoginSignup

This article is a Private article. Only a writer and users who know the URL can access it.
Please change open range to public in publish setting if you want to share this article with other users.

More than 1 year has passed since last update.

X68000 XCライブラリVer.2 早引き君(正誤表つき)

Last updated at Posted at 2023-03-09

X68000 XCライブラリVer.2 早引き君

目次

スプライト

基本的な表示方法

BASIC用の命令を使った表示

BASIC用のsp_defは引数のパターンデータの設定が16x16ドットの場合でも順番が見た目通りになる。
SP_DEFCGでは順番が特殊(正確には仕様通り)になる。

sp_sample.c
	char spPattern01[256] = {
		1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
        1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
	};
	
	sp_init();
	sp_def(0, spPattern01, 1);
	sp_def(1, spPattern01, 1);
	sp_def(2, spPattern01, 1);
	sp_def(3, spPattern01, 1);
	sp_def(4, spPattern01, 1);
	sp_def(5, spPattern01, 1);
	sp_def(6, spPattern01, 1);
	sp_color(0, IntColors, 1);
	sp_on()
	sp_disp(1)
	sp_move(0, 128, 128, 0);

正誤表

SPALET

間違い int SPALET(CODE, BLOCK, COLORCODE);
正解 int SPALET(SPRITE PALET NUMBER, PALET BLOCK, COLORCODE);
説明 XCライブラリマニュアルでは第一引数が垂直同期設定になっているが、実際は第1引数の31ビット目がVSYNC検出フラグ、7~0ビット目がパレットコード。

SP_REGST

間違い int SP_REGST(SPRITENO, MODE, X, Y, CODE, PAW);
正解 int SP_REGST(SPRITENO, X, Y, CODE, PAW);
説明 XCライブラリマニュアルでは第二引数が垂直同期設定になっているが、そもそも垂直同期設定の引数は第一引数の31bit目。つまり第1引数の31ビット目がVSYNV検出フラグ、6~0ビット目がスプライト番号。

0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up