Kor_Lee_Hee_Rak
の編集
http://hrb.osask.jp/wiki/?Kor_Lee_Hee_Rak
[
リロード
|
差分
|
単語検索
|
一覧
] [
編集
|
バックアップ
|
添付
]
-- 雛形とするページ --
A
Akkie
Athlon64X2
Clover
DAsoran
Falcon
FormatRule
FrontPage
Genesis
Help
I
InterWikiName
InterWikiSandBox
InterWikiテクニカル
Jormungand
K
Kebo
Kor_Lee_Hee_Rak
Leaf
Linux
Linux/wako_memo
MOIZ99
MW
MenuBar
OSC
PG_MANA
ReadersOS
RecentDeleted
SKYDASH
SandBox
Sero
Sigle
Source
Triangle_Ld.
Zxcvbnm
advance
advance/CPU
advance/FDC
advance/FPU
advance/NotHariMain
advance/QEMUVGA
advance/RTC
advance/blike
advance/cpu_reset
advance/driver
advance/driver/01
advance/driver/02
advance/families
advance/filesystem
advance/fwrite
advance/hddboot
advance/he86
advance/hints
advance/ipl
advance/kernel
advance/keycode
advance/osselect
advance/smaller1
advance/startup
advnace/smaller2
anzy
aotatsu
banbi-
bluedwarf
bo
bugs
challengers
cybozulabsyouth11
deskmanta
esb02b
faq
faq/advance
faq/asm
faq/c00-03
faq/c04-07
faq/c08-15
faq/c16-23
faq/c24-31
faq/make
faq/others
faq/qemu
guide
guide03
guide05
guide07
hikarupsp
imp_log/0000
imp_log/0001
imp_log/0002
imp_log/0003
impressions
index
k
killer_elf
kota
lea
lea/10_memory
lea/4_color
lea/idea
lea/terms
links
logs
logs/osa_hrb/comments0000
logs/osa_hrb/rumors0000
masa
members
message
mistakes
moge32
moppoi5168
notice
osdevjp
populars
prog_index
projects
q_and_a
q_and_a_2
qa_log/0000
qa_log/0001
qa_log/0002
qa_log/0003
qa_log/0004
qa_log/0005
qa_log/0006
qa_log/0007
qa_log/0008
qa_log/0009
quark
rankings
rule
sakamoto
sasaki
spc09
spcc_30min_os
tatsu
tools
tools/bim2hrb
tools/bin2obj
tools/cc1
tools/edimg
tools/gas2nask
tools/makefont
tools/nask
tools/obj2bim
tools/sjisconv
uchan
uho
updates
violations
wako
white
win64-bit
x
ytakano
ヘルプ
リックス
質問します
整形ルール
本は買ったぞ!持ってるぞ!
練習用ページ
*Kor_Lee_Hee_Rak -Haribote Wikiに初めて加入した韓国人 -他の韓国人たちの理解を助けるため, 同じ内容を Wiki-utfにもあげる予定です. -生年月日:1996.12.13(Triangle Ld。氏の年齢がね。偶然ですけどね。もしかしたら迷惑な場合は、この括弧は削除させていただきます。コメントをお願いいたします。) *HROS WOC System HROS WOC Systemは HRProgram(私が導く刺身紗羅高でもしましょうか? 信じようが信じまいが)で作った運営体制です. RapuOSを基盤としてテーマも変えながらうちのことで作っています. **起動音作り 起動音と言う(のは) Windowsが始まる時出る效果音を言います. 私が製作した osguzo.net46.net には初ページに Windows XP 起動音を入れたんです. 今度はこれを直接製作しようとします. -準備物 --本: mmlplay.hrb 研究に必要です --電卓: 複雑だから電卓に任せましょう --書かない紙一枚: うーん別に周波数をメモするためだからです --音楽ノート: ここに起動音を作曲しましょう -作曲 --皆さんが願い次第に思いきり作曲してください. できるだけ簡潔ながらも美しくした方が良いです. とても長ければ人々が煩わしがるんですよ. --これを MML 文法で整理して書かない紙にメモしておきます. --MMLから出るうーんを縦で整理しておきます. -ウムビョル周波数計算 --本の mmlplay.hrbを作る部分に見れば音の長さと周波数を計算する部分があります. --出力音公式(Basic): tonetable(i Mod 12) / (2 ^ (17 - int(i / 12))+('+'があれば +1, '-'があれば -1, その外には 0)~ i=o * 12 + notetable[(アルファベット 音名) - asc('A')] + ('+'があれば +1, '-'があれば -1, その外には 0)~ o=オクターブ ---tonetable=array(1071618315, 1135340056, 1202850889, 1274376125, 1350154473, 1430438836, 1515497155, 1605613306, 1701088041, 1802240000, 1909406767, 2022946002) ---notetable=array(+9,+11,0,+2,+4,+5,+7) '順に A, B, C, D, E, F, G --音長公式:[{(192/(音長)+('.'がいれば+(384/(音長), その外には 0))*125}/テムポ]*(音符の鋭い位)/8 -プログラムで整理 --これは下の関数を応用して作れば良いです. #include "apilib.h" void putsound(int timer, int length, int hertz1, int hertz2, int hertz3) //この部分の hertzの数はみなさんが決めた和音の構成音の最大数位決めてください. // 例えば, 3個の和音がいる時これら和音の構成音がそれぞれ (F, A, D), (C, E, G, O5C), (F, A)なら一番多 //い構成音がある (C, E, G, O5C)の構成音の受忍 4個を作れば良いです. { int i; i=api_settimer(timer, length); for(;i==128;i=api_getkey(1)){ api_beep(hertz1);//これは必ず出力します. //他の和音の構成音が共通的に hertz#義 #異常あったら if(hertz#) //構文を抜きます. if(hertz2!=0) api_beep(hertz2); if(hertz3!=0) api_beep(hertz3); } return 0; } //main 関数は上の関数を並べたのがなります. (これする次に続きます.) **ウィンドウ移動タスク mmlplay.hrbで音楽を聞いています.~ 窓を移しました.~ 音楽が腰砕けになります. こんな良くない事を解決する最高の方法は新しいタスクを作るのです. 私がただいま私はこれを修正して窓を移しながら音楽を聞くことができるようにしました. ***winmove.c 新たにこのファイルを作って MakeFileに登録させてください.~ 登録しようとすれば Make Fileを開いて...(確かに分かるはずだが...)~~ そして winmove.cを下記のように編集します. #include "bootpack.h" #include <stdio.h> struct WDATA wdatstr; void winmove_task() { struct TASK *task = task_now() for(;;) { io_cli() if (fifo32_status(&task->fifo) != 0) { fifo32_get(&task->fifo) io_sti() sheet_slide(wdatstr.wsht, wdatstr.wnew_wx, wdatstr.wnew_wy) } else { task_sleep(task) io_sti() } } } void winmove_move(struct SHEET *rsht, int rnew_wx, int rnew_wy, struct TASK *mytask) { wdatstr.wsht = rsht; wdatstr.wnew_wx = rnew_wx; wdatstr.wnew_wy = rnew_wy; fifo32_put(&mytask->fifo, 1) } ***bootpack.h 上の winmove.cに登録した関数と旧朝体を登録します. struct WDATA { struct SHEET *wsht; int wnew_wx, wnew_wy; }; void winmove_task() void winmove_move(struct SHEET *rsht, int rnew_wx, int rnew_wy, struct TASK *mytask) ***bootpack.c タスクをすぐ始動させるようにします(RapuOSに当たるように使いました. 修正法はみんなご存知でしょう?). struct TASK *winmove = task_alloc() int *winmove_fifo = (int *) memman_alloc_4k(memman, 128 * 4) winmove->tss.esp = memman_alloc_4k(memman, 64 * 1024) + 64 * 1024; winmove->tss.eip = (int) &winmove_task; winmove->tss.es = 1 * 8; winmove->tss.cs = 2 * 8; winmove->tss.ss = 1 * 8; winmove->tss.ds = 1 * 8; winmove->tss.fs = 1 * 8; winmove->tss.gs = 1 * 8; winmove->time = 0; strcpy(winmove->name, "WinMover.sce") task_run(winmove, 3, 2) /* level=1, priority=2 */ fifo32_init(&winmove->fifo, 128, winmove_fifo, winmove) 最後に窓を移す部分を修正します. どうもはご存知でしょう? if (fifo32_status(&fifo) == 0) { /* FIFO? */ if (new_mx >= 0) { io_sti() sheet_slide(sht_mouse, new_mx, new_my) new_mx = -1; } else if (new_wx != 0x7fffffff) { io_sti() winmove_move(sht, new_wx, new_wy, winmove) new_wx = 0x7fffffff; } else { task_sleep(task_a) io_sti() } そしてテストします.~ mmlplay.htb daigo.mml(趣向に任せます)を実行させて~ 窓をあちらこちらに掻き乱して見てください.~ *韓国語になる!! http://hrprogram.comxa.com/hws_work0.jpg この言葉は "私は李喜楽だ!!!"という意味です.~ ここには直接製作した韓国語フォントと出力ルチンが必要です. 韓国語フォントは内臓型だから今は修正することができません. バージョンが上がればフォントデータとともにフォント製作期もあげます. *Comment コメントのテストをしたが、それにもかかわらず、この現象は、昔のままですね。コメントを書く人々のためにosguzo.net46.netを利用してコメントを入れるようにしなければね。
タイムスタンプを変更しない
*Kor_Lee_Hee_Rak -Haribote Wikiに初めて加入した韓国人 -他の韓国人たちの理解を助けるため, 同じ内容を Wiki-utfにもあげる予定です. -生年月日:1996.12.13(Triangle Ld。氏の年齢がね。偶然ですけどね。もしかしたら迷惑な場合は、この括弧は削除させていただきます。コメントをお願いいたします。) *HROS WOC System HROS WOC Systemは HRProgram(私が導く刺身紗羅高でもしましょうか? 信じようが信じまいが)で作った運営体制です. RapuOSを基盤としてテーマも変えながらうちのことで作っています. **起動音作り 起動音と言う(のは) Windowsが始まる時出る效果音を言います. 私が製作した osguzo.net46.net には初ページに Windows XP 起動音を入れたんです. 今度はこれを直接製作しようとします. -準備物 --本: mmlplay.hrb 研究に必要です --電卓: 複雑だから電卓に任せましょう --書かない紙一枚: うーん別に周波数をメモするためだからです --音楽ノート: ここに起動音を作曲しましょう -作曲 --皆さんが願い次第に思いきり作曲してください. できるだけ簡潔ながらも美しくした方が良いです. とても長ければ人々が煩わしがるんですよ. --これを MML 文法で整理して書かない紙にメモしておきます. --MMLから出るうーんを縦で整理しておきます. -ウムビョル周波数計算 --本の mmlplay.hrbを作る部分に見れば音の長さと周波数を計算する部分があります. --出力音公式(Basic): tonetable(i Mod 12) / (2 ^ (17 - int(i / 12))+('+'があれば +1, '-'があれば -1, その外には 0)~ i=o * 12 + notetable[(アルファベット 音名) - asc('A')] + ('+'があれば +1, '-'があれば -1, その外には 0)~ o=オクターブ ---tonetable=array(1071618315, 1135340056, 1202850889, 1274376125, 1350154473, 1430438836, 1515497155, 1605613306, 1701088041, 1802240000, 1909406767, 2022946002) ---notetable=array(+9,+11,0,+2,+4,+5,+7) '順に A, B, C, D, E, F, G --音長公式:[{(192/(音長)+('.'がいれば+(384/(音長), その外には 0))*125}/テムポ]*(音符の鋭い位)/8 -プログラムで整理 --これは下の関数を応用して作れば良いです. #include "apilib.h" void putsound(int timer, int length, int hertz1, int hertz2, int hertz3) //この部分の hertzの数はみなさんが決めた和音の構成音の最大数位決めてください. // 例えば, 3個の和音がいる時これら和音の構成音がそれぞれ (F, A, D), (C, E, G, O5C), (F, A)なら一番多 //い構成音がある (C, E, G, O5C)の構成音の受忍 4個を作れば良いです. { int i; i=api_settimer(timer, length); for(;i==128;i=api_getkey(1)){ api_beep(hertz1);//これは必ず出力します. //他の和音の構成音が共通的に hertz#義 #異常あったら if(hertz#) //構文を抜きます. if(hertz2!=0) api_beep(hertz2); if(hertz3!=0) api_beep(hertz3); } return 0; } //main 関数は上の関数を並べたのがなります. (これする次に続きます.) **ウィンドウ移動タスク mmlplay.hrbで音楽を聞いています.~ 窓を移しました.~ 音楽が腰砕けになります. こんな良くない事を解決する最高の方法は新しいタスクを作るのです. 私がただいま私はこれを修正して窓を移しながら音楽を聞くことができるようにしました. ***winmove.c 新たにこのファイルを作って MakeFileに登録させてください.~ 登録しようとすれば Make Fileを開いて...(確かに分かるはずだが...)~~ そして winmove.cを下記のように編集します. #include "bootpack.h" #include <stdio.h> struct WDATA wdatstr; void winmove_task() { struct TASK *task = task_now() for(;;) { io_cli() if (fifo32_status(&task->fifo) != 0) { fifo32_get(&task->fifo) io_sti() sheet_slide(wdatstr.wsht, wdatstr.wnew_wx, wdatstr.wnew_wy) } else { task_sleep(task) io_sti() } } } void winmove_move(struct SHEET *rsht, int rnew_wx, int rnew_wy, struct TASK *mytask) { wdatstr.wsht = rsht; wdatstr.wnew_wx = rnew_wx; wdatstr.wnew_wy = rnew_wy; fifo32_put(&mytask->fifo, 1) } ***bootpack.h 上の winmove.cに登録した関数と旧朝体を登録します. struct WDATA { struct SHEET *wsht; int wnew_wx, wnew_wy; }; void winmove_task() void winmove_move(struct SHEET *rsht, int rnew_wx, int rnew_wy, struct TASK *mytask) ***bootpack.c タスクをすぐ始動させるようにします(RapuOSに当たるように使いました. 修正法はみんなご存知でしょう?). struct TASK *winmove = task_alloc() int *winmove_fifo = (int *) memman_alloc_4k(memman, 128 * 4) winmove->tss.esp = memman_alloc_4k(memman, 64 * 1024) + 64 * 1024; winmove->tss.eip = (int) &winmove_task; winmove->tss.es = 1 * 8; winmove->tss.cs = 2 * 8; winmove->tss.ss = 1 * 8; winmove->tss.ds = 1 * 8; winmove->tss.fs = 1 * 8; winmove->tss.gs = 1 * 8; winmove->time = 0; strcpy(winmove->name, "WinMover.sce") task_run(winmove, 3, 2) /* level=1, priority=2 */ fifo32_init(&winmove->fifo, 128, winmove_fifo, winmove) 最後に窓を移す部分を修正します. どうもはご存知でしょう? if (fifo32_status(&fifo) == 0) { /* FIFO? */ if (new_mx >= 0) { io_sti() sheet_slide(sht_mouse, new_mx, new_my) new_mx = -1; } else if (new_wx != 0x7fffffff) { io_sti() winmove_move(sht, new_wx, new_wy, winmove) new_wx = 0x7fffffff; } else { task_sleep(task_a) io_sti() } そしてテストします.~ mmlplay.htb daigo.mml(趣向に任せます)を実行させて~ 窓をあちらこちらに掻き乱して見てください.~ *韓国語になる!! http://hrprogram.comxa.com/hws_work0.jpg この言葉は "私は李喜楽だ!!!"という意味です.~ ここには直接製作した韓国語フォントと出力ルチンが必要です. 韓国語フォントは内臓型だから今は修正することができません. バージョンが上がればフォントデータとともにフォント製作期もあげます. *Comment コメントのテストをしたが、それにもかかわらず、この現象は、昔のままですね。コメントを書く人々のためにosguzo.net46.netを利用してコメントを入れるようにしなければね。
テキスト整形のルールを表示する