9: 2009-12-01 (火) 19:56:45 lina[6] [7] | 現: 2024-01-08 (月) 12:58:56 k-tan[8] [9] | ||
---|---|---|---|
Line 43: | Line 43: | ||
CALL 0xc7:0 | CALL 0xc7:0 | ||
; 永久スリープなので帰ってこない | ; 永久スリープなので帰ってこない | ||
+ | |||
[SECTION .data] | [SECTION .data] | ||
ALIGNB 4 | ALIGNB 4 | ||
+ | |||
func_init: | func_init: | ||
DD 0x0004, work, 0x0000 | DD 0x0004, work, 0x0000 | ||
; ファンクション番号0x04(API初期化), ワークエリアのポインタ, 終了ファンクション番号0x00 | ; ファンクション番号0x04(API初期化), ワークエリアのポインタ, 終了ファンクション番号0x00 | ||
+ | |||
func_openwin: | func_openwin: | ||
DD 0x0020, window, 0x0200, 18 * 8, 3 * 16, 0x0000 | DD 0x0020, window, 0x0200, 18 * 8, 3 * 16, 0x0000 | ||
; ファンクション番号0x20(ウィンドウオープン), window構造体のポインタ, スロット番号0x200, xサイズ(ドット単位), yサイズ(ドット単位), | ; ファンクション番号0x20(ウィンドウオープン), window構造体のポインタ, スロット番号0x200, xサイズ(ドット単位), yサイズ(ドット単位), | ||
; 終了ファンクション番号0x00 | ; 終了ファンクション番号0x00 | ||
+ | |||
func_titlebox: | func_titlebox: | ||
DD 0x0028, 0x1000, wintitle, 0, 8, 1, 0, 0, window, 0x00c0, 0, 0x0000 | DD 0x0028, 0x1000, wintitle, 0, 8, 1, 0, 0, window, 0x00c0, 0, 0x0000 | ||
Line 61: | Line 61: | ||
; xサイズ(キャラクタ単位), yサイズ(キャラクタ単位), 表示x位置0, 表示y位置0, window構造体のポインタ, | ; xサイズ(キャラクタ単位), yサイズ(キャラクタ単位), 表示x位置0, 表示y位置0, window構造体のポインタ, | ||
; 標準キャラクタセット使用(0x00c0), リザーブ0, 終了ファンクション番号0x00 | ; 標準キャラクタセット使用(0x00c0), リザーブ0, 終了ファンクション番号0x00 | ||
+ | |||
func_settitle: | func_settitle: | ||
DD 0x0040, 0x1000, 0, 0, wintitle, 0, 0, 0, 8, "naskhelo", 0x0000 | DD 0x0040, 0x1000, 0, 0, wintitle, 0, 0, 0, 8, "naskhelo", 0x0000 | ||
; ファクション番号0x40(テキスト表示), オプション0x1000(8bitキャラクタモード), 表示x位置0, 表示y位置0, textbox構造体のポインタ, | ; ファクション番号0x40(テキスト表示), オプション0x1000(8bitキャラクタモード), 表示x位置0, 表示y位置0, textbox構造体のポインタ, | ||
; 文字色0, 背景色0, キャラクタコードオフセット0, 文字数8, 文字列"naskhelo", 終了ファンクション番号0x00 | ; 文字色0, 背景色0, キャラクタコードオフセット0, 文字数8, 文字列"naskhelo", 終了ファンクション番号0x00 | ||
+ | |||
func_sleep: | func_sleep: | ||
DD 0x0018, 0x0001, 0, 0, 0x0000 | DD 0x0018, 0x0001, 0, 0, 0x0000 | ||
; ファンクション番号0x0018(シグナル関係の処理), オプション1(スリープ), パラメータ0, パラメータ0, 終了ファンクション番号0x00 | ; ファンクション番号0x0018(シグナル関係の処理), オプション1(スリープ), パラメータ0, パラメータ0, 終了ファンクション番号0x00 | ||
+ | |||
ALIGNB 16 ; 本当はalign8で十分(ただの気分で16にしてしまった) | ALIGNB 16 ; 本当はalign8で十分(ただの気分で16にしてしまった) | ||
work: | work: | ||
Line 79: | Line 79: | ||
RESB 64 ; テキストボックス構造体 | RESB 64 ; テキストボックス構造体 | ||
RESB 8 * 1 * 8 ; 8文字分 | RESB 8 * 1 * 8 ; 8文字分 | ||
+ | |||
*** どうやってアセンブルするの? [#q4b118d4] | *** どうやってアセンブルするの? [#q4b118d4] | ||
Line 156: | Line 156: | ||
-naskでAPI引数が分かりにくいと思う人は, nasmでマクロを使おう! と言ってみるテスト。私のnasmアプリはほぼ全てそう。 -- [[I.Tak.]] SIZE(10){2004-12-17 (金) 11:54:54} | -naskでAPI引数が分かりにくいと思う人は, nasmでマクロを使おう! と言ってみるテスト。私のnasmアプリはほぼ全てそう。 -- [[I.Tak.]] SIZE(10){2004-12-17 (金) 11:54:54} | ||
-tolset08を前提に改訂。 -- [[K]] SIZE(10){2005-01-28 (金) 22:49:31} | -tolset08を前提に改訂。 -- [[K]] SIZE(10){2005-01-28 (金) 22:49:31} | ||
- | + | //#comment | |
- | #comment | + |
(This host) = http://osask.net