ページへ戻る

− Links

 印刷 

guide​/nask のバックアップの現在との差分(No.9) :: OSASK計画

osaskwiki:guide/nask のバックアップの現在との差分(No.9)

« Prev[4]  Next »[5]
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+
« Prev[4]  Next »[5]