ページへ戻る
印刷
hideyosi/hidetol8計画
をテンプレートにして作成 ::
OSASK計画
osaskwiki
:hideyosi/hidetol8計画 をテンプレートにして作成
開始行:
さて・・・どうしたものか・・・w
これはかなり時間をかける予定。やりたいことがいっぱいある...
(途中であきらめてリリースする可能性大w)
*構想
**.g01計画
分かっているだけでもかなりのものがefg01対応化しており、さ...
(EXE化とかじゃなくて生粋の.g01化)
| |30日本|.g0化|h
|aksa|aksa1a|aksa|
|bim2g01|--|bim2g01|
|bim2hrb|bim2hrb|bim2hrb|
|bin2obj|bin2obj0|bin2obj|
|bin2ucc|--|bin2ucc|
|cpy|--|cpy|
|cpyc|--|cpyc|
|gas2nask|gas2nask|gas2nask|
|golib00|golib00|golib00|
|makefntc|--|makefntc|
|makefnt|makefnt|makefnt|
|mtek2org|--|mtek2org|
|nask|nask|nask|
|naskconv0|naskconv0|naskconv0|
|obj2bin|obj2bi4c|obj2bin|
|rjcg01|--|rjcg01|
|sjisconv|sjisconv|sjisconv|
|tekmin0|--|tekmin0|
|tekmin1|--|tekmin1|
**独立パッケージ
意図して孤立させているものは別。以下。
-Asuka
-bim2bin
-edimg
-t5lzma
-qemu
qemuを除いて今回は前バージョンのまま
**バージョンアップ!
-qemuを最新の0.10.6に
-UPXを最新に近いものに
**bim2binワンパック化
これが最大に厄介ではある。まず、lzma SDKを現行のものを使...
**互換性維持を捨てる
ファイル名を互換維持のために元のままにしてるよね。(aska....
もうそれをやめちゃう。hidetol_6で在来物(OSASKやCD収録は...
新しいものだってファイル名直せばそれで使える。それくらい...
また、Win9x系列のものは廃止。どうしてもほしければhidetol_...
*Asuka Ver2.0計画
こんなこっといっいな♪ でっきた ら いーいな♪
今のAsukaはC++で作られてるので28GOではコンパイルできない...
・・・これさぁ・・・C化ってできないもんか???
そうすれば28GO_Kに収められるからすっきりするし、うまくい...
*さて実行してくか・・・
**28GO_G
ここのソースはcpp0とcc1およびcc1plusが入ってるね。でさ・...
こいつだけ、ソースがでかいんだよなぁ。ダウンロード実験の...
cc1plusが今後使われたり改良される可能性は限りなく低いんで...
なので、いっそ、ソース抜いちゃおうかとwww
せっかくなのでちょっと。28GOcppoに必要なファイル郡。
2010/01/25 15:36 18,137 auto-host.h
2010/01/25 15:36 896 config.h
2010/01/25 15:36 3,030 cppdefault.c
2010/01/25 15:36 3,507 cppdefault.h
2010/01/25 15:36 8,405 cpperror.c
2010/01/25 15:36 26,987 cppexp.c
2010/01/25 15:36 35,075 cppfiles.c
2010/01/25 15:36 4,075 cpphash.c
2010/01/25 15:36 16,370 cpphash.h
2010/01/25 15:36 66,928 cppinit.c
2010/01/25 15:36 59,246 cpplex.c
2010/01/25 15:36 54,627 cpplib.c
2010/01/25 15:36 23,283 cpplib.h
2010/01/25 15:36 48,283 cppmacro.c
2010/01/25 15:36 14,156 cppmain.c
2010/01/25 15:36 15,671 defaults.h
2010/01/25 15:36 111,857 except.c
2010/01/25 15:36 7,648 except.h
2010/01/25 15:36 8,669 hashtable.c
2010/01/25 15:36 3,144 hashtable.h
2010/01/25 15:36 4,921 hwint.h
2010/01/25 15:36 207 insn-constants.h
2010/01/25 15:36 91,249 insn-flags.h
2010/01/25 15:36 1,412 intl.c
2010/01/25 15:36 1,579 intl.h
2010/01/25 17:09 97,072 libcpp.lib
2010/01/25 15:36 6,517 line-map.c
2010/01/25 15:36 4,948 line-map.h
2010/01/25 16:41 4,690 Makefile
2010/01/25 15:36 9,877 mbchar.c
2010/01/25 15:36 1,606 mbchar.h
2010/01/25 15:36 6,662 mkdeps.c
2010/01/25 15:36 2,734 mkdeps.h
2010/01/25 15:36 8,068 prefix.c
2010/01/25 15:36 1,226 prefix.h
2010/01/25 15:36 17,680 system.h
2010/01/25 15:36 173 version.c
2010/01/25 15:36 118 version.h
28GOcc1に必要なの・・・
2010/01/25 15:36 82,996 alias.c
2010/01/25 15:36 42,362 attribs.c
2010/01/25 15:36 18,137 auto-host.h
2010/01/25 15:36 26,469 basic-block.h
2010/01/25 15:36 7,203 bb-reorder.c
2010/01/25 15:36 19,389 bitmap.c
2010/01/25 15:36 12,411 bitmap.h
2010/01/25 15:36 6,781 builtin-attrs.def
2010/01/25 15:36 8,218 builtin-types.def
2010/01/25 15:36 130,313 builtins.c
2010/01/25 15:36 16,728 builtins.def
2010/01/25 15:36 22,535 c-aux-info.c
2010/01/25 15:36 134,692 c-common.c
2010/01/25 15:36 5,090 c-common.def
2010/01/25 15:36 34,570 c-common.h
2010/01/25 15:36 4,149 c-convert.c
2010/01/25 15:36 249,039 c-decl.c
2010/01/25 15:36 1,417 c-errors.c
2010/01/25 15:36 85,124 c-format.c
2010/01/25 15:36 3,729 c-lang.c
2010/01/25 15:36 41,367 c-lex.c
2010/01/25 15:36 1,209 c-lex.h
2010/01/25 15:36 10,356 c-objc-common.c
2010/01/25 15:36 214,224 c-parse.c
2010/01/25 15:36 14,136 c-pragma.c
2010/01/25 15:36 1,977 c-pragma.h
2010/01/25 15:36 22,266 c-semantics.c
2010/01/25 15:36 16,157 c-tree.h
2010/01/25 15:36 227,906 c-typeck.c
2010/01/25 15:36 27,628 caller-save.c
2010/01/25 15:36 155,730 calls.c
2010/01/25 15:36 18,009 cfg.c
2010/01/25 15:36 33,698 cfganal.c
2010/01/25 15:36 26,098 cfgbuild.c
2010/01/25 15:36 53,518 cfgcleanup.c
2010/01/25 15:36 15,265 cfglayout.c
2010/01/25 15:36 1,326 cfglayout.h
2010/01/25 15:36 23,575 cfgloop.c
2010/01/25 15:36 58,697 cfgrtl.c
2010/01/25 15:36 444,322 combine.c
2010/01/25 18:21 103,133 combine.o
2010/01/25 15:36 4,742 conditions.h
2010/01/25 15:36 896 config.h
2010/01/25 15:36 15,670 conflict.c
2010/01/25 15:36 15,428 convert.c
2010/01/25 15:36 1,076 convert.h
2010/01/25 15:36 3,030 cppdefault.c
2010/01/25 15:36 3,507 cppdefault.h
2010/01/25 15:36 8,405 cpperror.c
2010/01/25 15:36 26,987 cppexp.c
2010/01/25 15:36 35,075 cppfiles.c
2010/01/25 15:36 4,075 cpphash.c
2010/01/25 15:36 16,370 cpphash.h
2010/01/25 15:36 66,928 cppinit.c
2010/01/25 15:36 59,246 cpplex.c
2010/01/25 15:36 54,627 cpplib.c
2010/01/25 15:36 23,283 cpplib.h
2010/01/25 15:36 48,283 cppmacro.c
2010/01/25 15:36 250,371 cse.c
2010/01/25 15:36 37,913 cselib.c
2010/01/25 15:36 2,309 cselib.h
2010/01/25 15:36 90,174 dbxout.c
2010/01/25 15:36 1,021 dbxout.h
2010/01/25 15:36 2,540 debug.c
2010/01/25 15:36 6,059 debug.h
2010/01/25 15:36 15,671 defaults.h
2010/01/25 15:36 42,172 dependence.c
2010/01/25 15:36 102,761 df.c
2010/01/25 15:36 11,361 df.h
2010/01/25 15:36 44,015 diagnostic.c
2010/01/25 15:36 373 diagnostic.def
2010/01/25 15:36 12,814 diagnostic.h
2010/01/25 15:36 29,278 doloop.c
2010/01/25 15:36 19,709 dominance.c
2010/01/25 15:36 17,346 dwarf2.h
2010/01/25 15:36 25,376 dwarf2asm.c
2010/01/25 15:36 2,931 dwarf2asm.h
2010/01/25 15:36 379,147 dwarf2out.c
2010/01/25 15:36 1,285 dwarf2out.h
2010/01/25 15:36 237,178 dwarfout.c
2010/01/25 15:36 142,702 emit-rtl.c
2010/01/25 15:36 1,718 errors.h
2010/01/25 15:36 111,857 except.c
2010/01/25 15:36 7,648 except.h
2010/01/25 15:36 48,759 explow.c
2010/01/25 15:36 156,841 expmed.c
2010/01/25 15:36 347,971 expr.c
2010/01/25 15:36 31,879 expr.h
2010/01/25 15:36 112,995 final.c
2010/01/25 15:36 21,210 flags.h
2010/01/25 15:36 133,678 flow.c
2010/01/25 15:36 251,287 fold-const.c
2010/01/25 15:36 255,535 function.c
2010/01/25 15:36 25,033 function.h
2010/01/25 15:36 5,278 gcov-io.h
2010/01/25 15:36 208,910 gcse.c
2010/01/25 15:36 17,972 genrtl.c
2010/01/25 15:36 20,016 genrtl.h
2010/01/25 15:36 19,592 ggc-common.c
2010/01/25 15:36 43,400 ggc-page.c
2010/01/25 15:36 9,290 ggc.h
2010/01/25 15:36 63,318 global.c
2010/01/25 15:36 11,192 graph.c
2010/01/25 15:36 1,099 graph.h
2010/01/25 15:36 229 gstab.h
2010/01/25 15:36 1,315 gsyms.h
2010/01/25 15:36 61,982 haifa-sched.c
2010/01/25 15:36 17,723 hard-reg-set.h
2010/01/25 15:36 5,597 hash.c
2010/01/25 15:36 4,868 hash.h
2010/01/25 15:36 8,669 hashtable.c
2010/01/25 15:36 3,144 hashtable.h
2010/01/25 15:36 1,352 hooks.c
2010/01/25 15:36 1,096 hooks.h
2010/01/25 15:36 4,921 hwint.h
2010/01/25 15:36 389,761 i386.c
2010/01/25 15:36 81,451 ifcvt.c
2010/01/25 15:36 1,695 input.h
2010/01/25 15:36 1,793 insn-addr.h
2010/01/25 15:36 4,592 insn-attr.h
2010/01/25 15:36 988,099 insn-attrtab.c
2010/01/25 15:36 16,626 insn-codes.h
2010/01/25 15:36 412 insn-config.h
2010/01/25 15:36 207 insn-constants.h
2010/01/25 15:36 413,064 insn-emit.c
2010/01/25 15:36 69,072 insn-extract.c
2010/01/25 15:36 91,249 insn-flags.h
2010/01/25 15:36 22,918 insn-opinit.c
2010/01/25 15:36 431,045 insn-output.c
2010/01/25 15:36 671 insn-peep.c
2010/01/25 15:36 1,227,452 insn-recog.c
2010/01/25 15:36 105,432 integrate.c
2010/01/25 15:36 8,435 integrate.h
2010/01/25 15:36 1,412 intl.c
2010/01/25 15:36 1,579 intl.h
2010/01/25 15:36 65,669 jump.c
2010/01/25 15:36 6,775 langhooks-def.h
2010/01/25 15:36 8,286 langhooks.c
2010/01/25 15:36 6,933 langhooks.h
2010/01/25 15:36 44,758 lcm.c
2010/01/25 18:55 4,646,954 libbackend.lib
2010/01/25 18:09 97,072 libcpp.lib
2010/01/25 15:36 8,342 libfuncs.h
2010/01/25 15:36 6,517 line-map.c
2010/01/25 15:36 4,948 line-map.h
2010/01/25 15:36 4,091 lists.c
2010/01/25 15:36 80,898 local-alloc.c
2010/01/25 15:36 334,496 loop.c
2010/01/25 15:36 16,555 loop.h
2010/01/25 15:36 8,939 machmode.def
2010/01/25 15:36 5,995 machmode.h
2010/01/25 15:36 9,877 mbchar.c
2010/01/25 15:36 1,606 mbchar.h
2010/01/25 15:36 6,662 mkdeps.c
2010/01/25 15:36 2,734 mkdeps.h
2010/01/25 15:36 157,341 optabs.c
2010/01/25 15:36 10,819 optabs.h
2010/01/25 15:36 181 options.h
2010/01/25 15:36 21,825 output.h
2010/01/25 15:36 2,342 params.c
2010/01/25 15:36 4,002 params.def
2010/01/25 15:36 3,209 params.h
2010/01/25 15:36 29,598 predict.c
2010/01/25 15:36 4,220 predict.def
2010/01/25 15:36 1,511 predict.h
2010/01/25 15:36 8,068 prefix.c
2010/01/25 15:36 1,226 prefix.h
2010/01/25 15:36 18,933 print-rtl.c
2010/01/25 15:36 23,194 print-tree.c
2010/01/25 15:36 36,306 profile.c
2010/01/25 15:36 151,319 real.c
2010/01/25 15:36 17,686 real.h
2010/01/25 15:36 92,753 recog.c
2010/01/25 15:36 9,783 recog.h
2010/01/25 15:36 84,991 reg-stack.c
2010/01/25 15:36 80,443 regclass.c
2010/01/25 15:36 76,217 regmove.c
2010/01/25 15:36 54,158 regrename.c
2010/01/25 15:36 8,897 regs.h
2010/01/25 15:36 238,998 reload.c
2010/01/25 15:36 15,136 reload.h
2010/01/25 15:36 320,221 reload1.c
2010/01/25 15:36 127,333 reorg.c
2010/01/25 15:36 40,868 resource.c
2010/01/25 15:36 2,108 resource.h
2010/01/25 15:36 4,157 rtl-error.c
2010/01/25 15:36 19,617 rtl.c
2010/01/25 15:36 46,315 rtl.def
2010/01/25 15:36 85,494 rtl.h
2010/01/25 15:36 78,912 rtlanal.c
2010/01/25 15:36 13,432 sbitmap.c
2010/01/25 15:36 5,692 sbitmap.h
2010/01/25 15:36 48,960 sched-deps.c
2010/01/25 15:36 9,715 sched-ebb.c
2010/01/25 15:36 12,684 sched-int.h
2010/01/25 15:36 91,622 sched-rgn.c
2010/01/25 15:36 23,861 sched-vis.c
2010/01/25 15:36 53,060 sdbout.c
2010/01/25 15:36 925 sdbout.h
2010/01/25 15:36 23,901 sibcall.c
2010/01/25 15:36 83,363 simplify-rtx.c
2010/01/25 15:36 37,727 ssa-ccp.c
2010/01/25 15:36 22,962 ssa-dce.c
2010/01/25 15:36 66,530 ssa.c
2010/01/25 15:36 2,616 ssa.h
2010/01/25 15:36 9,369 stab.def
2010/01/25 15:36 197,862 stmt.c
2010/01/25 15:36 67,272 stor-layout.c
2010/01/25 15:36 4,854 stringpool.c
2010/01/25 15:36 17,680 system.h
2010/01/25 15:36 7,154 target-def.h
2010/01/25 15:36 8,282 target.h
2010/01/25 15:36 578 timevar.h
2010/01/25 15:36 2,779 tm-preds.h
2010/01/25 15:36 122 tm_p.h
2010/01/25 15:36 159,578 toplev.c
2010/01/25 15:36 5,483 toplev.h
2010/01/25 15:36 15,536 tree-check.h
2010/01/25 15:36 24,157 tree-dump.c
2010/01/25 15:36 2,965 tree-dump.h
2010/01/25 15:36 47,099 tree-inline.c
2010/01/25 15:36 1,592 tree-inline.h
2010/01/25 15:36 138,337 tree.c
2010/01/25 15:36 41,525 tree.def
2010/01/25 15:36 131,273 tree.h
2010/01/25 15:36 481 typeclass.h
2010/01/25 15:36 148,071 unroll.c
2010/01/25 15:36 152,960 varasm.c
2010/01/25 15:36 2,865 varray.c
2010/01/25 15:36 11,029 varray.h
2010/01/25 15:36 173 version.c
2010/01/25 15:36 118 version.h
2010/01/25 15:36 55,043 vmsdbgout.c
2010/01/25 15:36 25,660 winnt.c
2010/01/25 15:36 13,860 xcoffout.c
いらないと思われるファイル達。
cpディレクトリ内
2010/01/25 15:34 176,585 call.c
2010/01/25 15:34 15,048 cfns.h
2010/01/25 15:34 255,601 class.c
2010/01/25 15:34 4,299 cp-lang.c
2010/01/25 15:34 11,975 cp-tree.def
2010/01/25 15:34 190,445 cp-tree.h
2010/01/25 15:34 39,521 cvt.c
2010/01/25 15:34 466,028 decl.c
2010/01/25 15:34 2,005 decl.h
2010/01/25 15:34 162,934 decl2.c
2010/01/25 15:34 11,308 dump.c
2010/01/25 15:34 78,045 error.c
2010/01/25 15:34 25,427 except.c
2010/01/25 15:34 3,843 expr.c
2010/01/25 15:34 14,078 friend.c
2010/01/25 15:34 107,563 init.c
2010/01/25 15:34 47,149 lex.c
2010/01/25 15:34 3,410 lex.h
2010/01/25 15:34 329 Makefile
2010/01/25 15:34 73,898 mangle.c
2010/01/25 15:34 32,018 method.c
2010/01/25 15:34 6,174 operators.def
2010/01/25 15:34 9,936 optimize.c
2010/01/25 15:34 442,688 parse.c
2010/01/25 15:34 2,361 parse.h
2010/01/25 15:34 322,662 pt.c
2010/01/25 15:34 6,496 ptree.c
2010/01/25 15:34 10,533 repo.c
2010/01/25 15:34 45,877 rtti.c
2010/01/25 15:34 82,452 search.c
2010/01/25 15:34 73,561 semantics.c
2010/01/25 15:34 42,716 spew.c
2010/01/25 15:34 70,234 tree.c
2010/01/25 15:34 219,474 typeck.c
2010/01/25 15:34 42,890 typeck2.c
gccディレクトリ内
2010/01/25 15:36 12,446 cppmain.n
2010/01/25 15:36 10,559 dwarf.h
2010/01/25 15:36 3,024 halfpic.h
2010/01/25 15:36 1,514 stack.h
2010/01/25 15:36 6,913 vmsdbg.h
2010/01/25 15:36 8,004 xcoffout.h
総ソース18MBが3MB近く減ったぞw これでいっちゃうかw
あと、生成されるものも、cc1・cpp0から、28GOcc1・28GOcpp0...
**28GO_K
まず、いくつかのものが.g01化してるので当然efg01相当がいる...
***aksa
とりあえずソースをg01のものに入れ替え。
%%COLOR(red){コンパイル実験はまだ}%%でけた。ついでに名前...
COLOR(red){バージョン表記搭載まだなんだけど・・・なんぞこ...
・・・まいったなぁ・・・Usageのメッセージなんぞでかく占め...
static unsigned char cmdusg[] = { ベ...
0x86, 0x50, 0...
0x88, 0x88,...
0x02, 'o', 'f', 's', 0x11, '#', 0x0c,...
0x11, '-', 'r', 0x20, 0x1c,...
0x02, 'e', 'i', 'p', 0x11, '#', 0x0c,...
0x00, 'd', 0x11, '#', 0x0c,...
0x02, 'l', 'i', 'n', 0x11, '#', 0x0c,...
0x40 0...
};
ばんざーい! 解析できたーーーーー!!!!!
・・・バージョン表記はefg01側で考えないといけないのね・・...
COLOR(blue){''結論!!!'' 今回はバージョン表記は見送り...
***bim2g01
追加した。
COLOR(blue){でけた!}
***bim2hrb
乗せかえた。
COLOR(blue){でけた!}
***bim2obj
乗せかえた。
COLOR(blue){でけた!}
***bim2ucc
追加。
COLOR(blue){でけた!}
***cpyとcpyc
追加。
COLOR(blue){でけた!}
***gas2nask
追加。同時にtools*とfunc内のgas2nask関連のものを削除
COLOR(blue){でけた!}
***golib00
追加。同時にtools*とfunc内のgolib00関連のものを削除
COLOR(blue){でけた!}
***makefontc
名前が違うな・・・追加。同時にmakefontを削除
COLOR(blue){でけた!}
COLOR(red){makefntcを採用。aska版はまた今度・・・}
***mtek2org
追加。
COLOR(blue){でけた!}
***Nasuka
追加。同時にtools*とfunc内のnask関連のものを削除
COLOR(blue){でけた!}
***naskconv0
追加。同時にtools*とfunc内のnaskconv関連のものを削除
COLOR(blue){でけた!}
***obj2bim
載せ変え。同時にautodec関連のものを削除
COLOR(blue){でけた!}
***rjcg01
追加。
COLOR(blue){でけた!}
***sjisconv
追加。同時にtools*とfunc内のsjisconv関連のものを削除
COLOR(blue){でけた!}
***toolstdc・toolw32
このディレクトリは空になったので削除
***g01libcとg01libc1
内部にはオブジェクトファイルあり。ライセンスの確認が必要...
-g01libc内の_chkstk.oは例の条件付GPLのヤツと同一であるこ...
-g01libc1内のものはみんなKタン作であることを確認。(考え...
*gas2naskに例の問題が?
g01化された最新(たぶん)のgas2naskに例の
skip:adcl %edx, 20(%ecx)
skip:adcl %edx, 20(%esi)
エラーが出ることが判明。これを修理。~
COLOR(blue){その意味では初のg01アプリのバージョンアップw...
・・・あれ? 前のと違うじゃんこれ!
**検証
以前にも似たバグがあった。今、手動でbim2bin.cを中間コンパ...
あったあった。二箇所。 つまり、上記のエラーは、gas2nask...
(前回と違い、今回はgas2naskのソースは最新。うへぇ~! ...
これはようするに、i386 CPUのオペランドとニーモニックの一...
SIZE(22){''だれかそういうのの載ってるURL教えてけれ!!''}~
ググっても全然みつからないよ・・・orz・・・
**手がかりがあったぞ
adclは、''拡張加減算''と呼ばれるものらしい。
・・・やっとこさ、NASMの解説サイトを見つけたんだが・・・・~
http://ryujin.kuis.kyoto-u.ac.jp/~nobu/study/nasm/nasm.html
これからこれを読むのか・・・頭クラクラしてきた・・・
**お得意のやっつけ変化球
実験的にadclの行を抜いてgas2naskしてみた。するってーと、N...
_rc_encode0: _rc_encode0:
pushl %ebp PUSH EBP
movl %esp, %ebp MOV EBP,ESP
movl 8(%ebp), %ecx MOV ECX,DWORD [8+E...
shrl 4(%ecx) SHR DWORD [4+ECX],1
cmpl $0, 12(%ebp) CMP DWORD [12+EBP],0
jne L4079 JNE L4079
movl 4(%ecx), %eax MOV EAX,DWORD [4+E...
xorl %edx, %edx XOR EDX,EDX
addl %eax, 16(%ecx) ADD DWORD [16+ECX]...
; adcl %edx, 20(%ecx)
L4079: L4079:
movl 4(%ecx), %eax MOV EAX,DWORD [4+E...
cmpl $16777215, %eax CMP EAX,16777215
また、adcl、そしてそれに良く似たaddl命令の働きがわかって...
| |>|>|GASソース| |>|>|Nasuka(NASM風)ソース|
|addl命令| addl | %eax | 16(%ecx) | | ADD | DWOR...
これらの比較から、まだ未確認だがこういう予測が立ってきた...
-COLOR(blue){多くの命令は、GASの場合、おケツにlが付いてい...
-COLOR(blue){第一オペランドと第二オペランドが逆}
・・・つーことはだよ? x86に、''ADC''という命令がダイレ...
**出ました!乱暴者!!!
どうもx86には、''ADC''という命令はあるっぽい(まだ、調べ...
さっき出来た.nasに、手書きでADC命令を書きこんでNasukaにか...
さぁ!動くか!? うごくのかあぁぁぁぁ!!!!
COLOR(blue){動いちゃうんだからやめられないよなホントww...
- -osacmp -tek0 正常動作。出力ファイルに違いがない!
- -osacmp -tek1 正常動作。出力ファイルに違いがない!
- -osacmp -tek5 正常動作。出力ファイルに違いがない!
完璧だ・・・私は完璧だ! 今日から戦闘力10万の完璧超人を...
**貴様風情に北斗1800年の歴史を極めることなどできない
・・・でさ・・・gas2naskどうすんのよ・・
・・・・・・・・・・・・・orz・・・・・・・・・・・・・・・
さてgas2naskのソースを眺めてると、acDl(ADD)命令の定義が...
・・・これは、オペランドが一個しかないもの、2個あるものっ...
ふむ。大体合ってると思う。one_param内にはCALLやJPがあるが...
しかしそうなると、ADDにはオペランドが一個っていう場合があ...
あぁぁぁっと!勘違いだ! ADDにはパラメータ一個は存在しな...
うーん・・・ADDに対してFADDはFPUを使っての命令・・・と。...
しかし、逆に、これのCF関連命令であるADCに、FADCっていう命...
たぶんこれで合っているはず。adcl(ADC)命令には、パラメー...
なので、たぶん、adclの定義はtwo_param内に追加すればいいは...
**ソース内の定義の意味は?
gas2naskのソース内では、たとえばaddlの場合、
"1addb ADD",
"4addl ADD",
"2addw ADD",
こんなことをしている。先頭の数値とお尻の一文字。これはど...
*いけた?でもわかんねw
"1addb ADD",
"4addl ADD",
"2addw ADD",
"4adcl ADD",
もうわっかんないので無理やりこんなことしてみたら、ちゃん...
*復帰~
うーん・・・思うところもあるけど、本来の目的であるhidetol...
(どーせこれは、GOでもなんでもない。28GOであり、hidetolな...
*そんなわけで第一期完成
実行ファイル
#ref(hidetol_8.exe)
ソース
#ref(hidetol_8_src.exe)
COLOR(red){まだOSASKもなんもコンパイルしてません・・・自...
**OSASKコンパイル
・・・ダメでした・・・orz・・・
で、問題を検証してみたんだけど、どうもpokonがおかしい。で...
-差を見てみると、なんとかくだけど規則的に差が出ているよう...
-そもそも、ほんのわずかだけど、サイズが異なる
でね。こりゃ、obj2bimがバグってるのかぁ?っていうと、winm...
・・・どゆことなんだべか???
COLOR(blue){おぉぉっとぉ! 動いたぞ!!!}
二つの差。それは、rulファイル(各々専用)。ちょっとヤマカ...
元々のmak_pl0.txt こうしますた!
STK_PK_AT = 1m STK_PK_AT = 64k
STK_PK_TW = 1m STK_PK_TW = 64k
STK_PK_NE = 1m STK_PK_NE = 64k
これでコンパイルかけてみた。やっぱり同じにはならないんだ...
オレは天才だあぁぁぁ! どんな言語もたちどころに習得でき...
**はりぼて
こーっちもイケたぞおぉぉ!!!
リリース近し!! w
**qemuが起動しないミス
例によってhikarupspさんが見つけてくれた!!
qemuの起動に問題があったので一部やり直しました。
#ref(hidetol_8_2.exe)
*リリース向け準備
たぶんもう問題はないと思う。リリースに向けて最後の準備。
で!
この版ではコマンドそのものやパラメータがいろいろ変化して...
Linuxとかならpatchを流せばいいんだけどWinの場合はねぇ・・・
そんなわけで、とりあえずご用意。
**OSASK4.7の代替
[[ここ>http://osask.net/w/540.html]]からOSAKA Ver4.7を落...
コイツはhidetol_8で一発コンパイルできるようにMakefile関係...
**はりぼての代替
#ref(harib27f_x.zip)
こいつは「30日で出来る!OS自作入門」付属CD-ROM内の、30日...
harib27_x
├app_mak.txt
├apilib
│ └Makefile
├haribote
│ └Makefile
└gvuiew
└Makefile
*リリース完了! ('10/2/1)
リリースが完了しましたので、このページは凍結♪ 添付も引っ...
終了行:
さて・・・どうしたものか・・・w
これはかなり時間をかける予定。やりたいことがいっぱいある...
(途中であきらめてリリースする可能性大w)
*構想
**.g01計画
分かっているだけでもかなりのものがefg01対応化しており、さ...
(EXE化とかじゃなくて生粋の.g01化)
| |30日本|.g0化|h
|aksa|aksa1a|aksa|
|bim2g01|--|bim2g01|
|bim2hrb|bim2hrb|bim2hrb|
|bin2obj|bin2obj0|bin2obj|
|bin2ucc|--|bin2ucc|
|cpy|--|cpy|
|cpyc|--|cpyc|
|gas2nask|gas2nask|gas2nask|
|golib00|golib00|golib00|
|makefntc|--|makefntc|
|makefnt|makefnt|makefnt|
|mtek2org|--|mtek2org|
|nask|nask|nask|
|naskconv0|naskconv0|naskconv0|
|obj2bin|obj2bi4c|obj2bin|
|rjcg01|--|rjcg01|
|sjisconv|sjisconv|sjisconv|
|tekmin0|--|tekmin0|
|tekmin1|--|tekmin1|
**独立パッケージ
意図して孤立させているものは別。以下。
-Asuka
-bim2bin
-edimg
-t5lzma
-qemu
qemuを除いて今回は前バージョンのまま
**バージョンアップ!
-qemuを最新の0.10.6に
-UPXを最新に近いものに
**bim2binワンパック化
これが最大に厄介ではある。まず、lzma SDKを現行のものを使...
**互換性維持を捨てる
ファイル名を互換維持のために元のままにしてるよね。(aska....
もうそれをやめちゃう。hidetol_6で在来物(OSASKやCD収録は...
新しいものだってファイル名直せばそれで使える。それくらい...
また、Win9x系列のものは廃止。どうしてもほしければhidetol_...
*Asuka Ver2.0計画
こんなこっといっいな♪ でっきた ら いーいな♪
今のAsukaはC++で作られてるので28GOではコンパイルできない...
・・・これさぁ・・・C化ってできないもんか???
そうすれば28GO_Kに収められるからすっきりするし、うまくい...
*さて実行してくか・・・
**28GO_G
ここのソースはcpp0とcc1およびcc1plusが入ってるね。でさ・...
こいつだけ、ソースがでかいんだよなぁ。ダウンロード実験の...
cc1plusが今後使われたり改良される可能性は限りなく低いんで...
なので、いっそ、ソース抜いちゃおうかとwww
せっかくなのでちょっと。28GOcppoに必要なファイル郡。
2010/01/25 15:36 18,137 auto-host.h
2010/01/25 15:36 896 config.h
2010/01/25 15:36 3,030 cppdefault.c
2010/01/25 15:36 3,507 cppdefault.h
2010/01/25 15:36 8,405 cpperror.c
2010/01/25 15:36 26,987 cppexp.c
2010/01/25 15:36 35,075 cppfiles.c
2010/01/25 15:36 4,075 cpphash.c
2010/01/25 15:36 16,370 cpphash.h
2010/01/25 15:36 66,928 cppinit.c
2010/01/25 15:36 59,246 cpplex.c
2010/01/25 15:36 54,627 cpplib.c
2010/01/25 15:36 23,283 cpplib.h
2010/01/25 15:36 48,283 cppmacro.c
2010/01/25 15:36 14,156 cppmain.c
2010/01/25 15:36 15,671 defaults.h
2010/01/25 15:36 111,857 except.c
2010/01/25 15:36 7,648 except.h
2010/01/25 15:36 8,669 hashtable.c
2010/01/25 15:36 3,144 hashtable.h
2010/01/25 15:36 4,921 hwint.h
2010/01/25 15:36 207 insn-constants.h
2010/01/25 15:36 91,249 insn-flags.h
2010/01/25 15:36 1,412 intl.c
2010/01/25 15:36 1,579 intl.h
2010/01/25 17:09 97,072 libcpp.lib
2010/01/25 15:36 6,517 line-map.c
2010/01/25 15:36 4,948 line-map.h
2010/01/25 16:41 4,690 Makefile
2010/01/25 15:36 9,877 mbchar.c
2010/01/25 15:36 1,606 mbchar.h
2010/01/25 15:36 6,662 mkdeps.c
2010/01/25 15:36 2,734 mkdeps.h
2010/01/25 15:36 8,068 prefix.c
2010/01/25 15:36 1,226 prefix.h
2010/01/25 15:36 17,680 system.h
2010/01/25 15:36 173 version.c
2010/01/25 15:36 118 version.h
28GOcc1に必要なの・・・
2010/01/25 15:36 82,996 alias.c
2010/01/25 15:36 42,362 attribs.c
2010/01/25 15:36 18,137 auto-host.h
2010/01/25 15:36 26,469 basic-block.h
2010/01/25 15:36 7,203 bb-reorder.c
2010/01/25 15:36 19,389 bitmap.c
2010/01/25 15:36 12,411 bitmap.h
2010/01/25 15:36 6,781 builtin-attrs.def
2010/01/25 15:36 8,218 builtin-types.def
2010/01/25 15:36 130,313 builtins.c
2010/01/25 15:36 16,728 builtins.def
2010/01/25 15:36 22,535 c-aux-info.c
2010/01/25 15:36 134,692 c-common.c
2010/01/25 15:36 5,090 c-common.def
2010/01/25 15:36 34,570 c-common.h
2010/01/25 15:36 4,149 c-convert.c
2010/01/25 15:36 249,039 c-decl.c
2010/01/25 15:36 1,417 c-errors.c
2010/01/25 15:36 85,124 c-format.c
2010/01/25 15:36 3,729 c-lang.c
2010/01/25 15:36 41,367 c-lex.c
2010/01/25 15:36 1,209 c-lex.h
2010/01/25 15:36 10,356 c-objc-common.c
2010/01/25 15:36 214,224 c-parse.c
2010/01/25 15:36 14,136 c-pragma.c
2010/01/25 15:36 1,977 c-pragma.h
2010/01/25 15:36 22,266 c-semantics.c
2010/01/25 15:36 16,157 c-tree.h
2010/01/25 15:36 227,906 c-typeck.c
2010/01/25 15:36 27,628 caller-save.c
2010/01/25 15:36 155,730 calls.c
2010/01/25 15:36 18,009 cfg.c
2010/01/25 15:36 33,698 cfganal.c
2010/01/25 15:36 26,098 cfgbuild.c
2010/01/25 15:36 53,518 cfgcleanup.c
2010/01/25 15:36 15,265 cfglayout.c
2010/01/25 15:36 1,326 cfglayout.h
2010/01/25 15:36 23,575 cfgloop.c
2010/01/25 15:36 58,697 cfgrtl.c
2010/01/25 15:36 444,322 combine.c
2010/01/25 18:21 103,133 combine.o
2010/01/25 15:36 4,742 conditions.h
2010/01/25 15:36 896 config.h
2010/01/25 15:36 15,670 conflict.c
2010/01/25 15:36 15,428 convert.c
2010/01/25 15:36 1,076 convert.h
2010/01/25 15:36 3,030 cppdefault.c
2010/01/25 15:36 3,507 cppdefault.h
2010/01/25 15:36 8,405 cpperror.c
2010/01/25 15:36 26,987 cppexp.c
2010/01/25 15:36 35,075 cppfiles.c
2010/01/25 15:36 4,075 cpphash.c
2010/01/25 15:36 16,370 cpphash.h
2010/01/25 15:36 66,928 cppinit.c
2010/01/25 15:36 59,246 cpplex.c
2010/01/25 15:36 54,627 cpplib.c
2010/01/25 15:36 23,283 cpplib.h
2010/01/25 15:36 48,283 cppmacro.c
2010/01/25 15:36 250,371 cse.c
2010/01/25 15:36 37,913 cselib.c
2010/01/25 15:36 2,309 cselib.h
2010/01/25 15:36 90,174 dbxout.c
2010/01/25 15:36 1,021 dbxout.h
2010/01/25 15:36 2,540 debug.c
2010/01/25 15:36 6,059 debug.h
2010/01/25 15:36 15,671 defaults.h
2010/01/25 15:36 42,172 dependence.c
2010/01/25 15:36 102,761 df.c
2010/01/25 15:36 11,361 df.h
2010/01/25 15:36 44,015 diagnostic.c
2010/01/25 15:36 373 diagnostic.def
2010/01/25 15:36 12,814 diagnostic.h
2010/01/25 15:36 29,278 doloop.c
2010/01/25 15:36 19,709 dominance.c
2010/01/25 15:36 17,346 dwarf2.h
2010/01/25 15:36 25,376 dwarf2asm.c
2010/01/25 15:36 2,931 dwarf2asm.h
2010/01/25 15:36 379,147 dwarf2out.c
2010/01/25 15:36 1,285 dwarf2out.h
2010/01/25 15:36 237,178 dwarfout.c
2010/01/25 15:36 142,702 emit-rtl.c
2010/01/25 15:36 1,718 errors.h
2010/01/25 15:36 111,857 except.c
2010/01/25 15:36 7,648 except.h
2010/01/25 15:36 48,759 explow.c
2010/01/25 15:36 156,841 expmed.c
2010/01/25 15:36 347,971 expr.c
2010/01/25 15:36 31,879 expr.h
2010/01/25 15:36 112,995 final.c
2010/01/25 15:36 21,210 flags.h
2010/01/25 15:36 133,678 flow.c
2010/01/25 15:36 251,287 fold-const.c
2010/01/25 15:36 255,535 function.c
2010/01/25 15:36 25,033 function.h
2010/01/25 15:36 5,278 gcov-io.h
2010/01/25 15:36 208,910 gcse.c
2010/01/25 15:36 17,972 genrtl.c
2010/01/25 15:36 20,016 genrtl.h
2010/01/25 15:36 19,592 ggc-common.c
2010/01/25 15:36 43,400 ggc-page.c
2010/01/25 15:36 9,290 ggc.h
2010/01/25 15:36 63,318 global.c
2010/01/25 15:36 11,192 graph.c
2010/01/25 15:36 1,099 graph.h
2010/01/25 15:36 229 gstab.h
2010/01/25 15:36 1,315 gsyms.h
2010/01/25 15:36 61,982 haifa-sched.c
2010/01/25 15:36 17,723 hard-reg-set.h
2010/01/25 15:36 5,597 hash.c
2010/01/25 15:36 4,868 hash.h
2010/01/25 15:36 8,669 hashtable.c
2010/01/25 15:36 3,144 hashtable.h
2010/01/25 15:36 1,352 hooks.c
2010/01/25 15:36 1,096 hooks.h
2010/01/25 15:36 4,921 hwint.h
2010/01/25 15:36 389,761 i386.c
2010/01/25 15:36 81,451 ifcvt.c
2010/01/25 15:36 1,695 input.h
2010/01/25 15:36 1,793 insn-addr.h
2010/01/25 15:36 4,592 insn-attr.h
2010/01/25 15:36 988,099 insn-attrtab.c
2010/01/25 15:36 16,626 insn-codes.h
2010/01/25 15:36 412 insn-config.h
2010/01/25 15:36 207 insn-constants.h
2010/01/25 15:36 413,064 insn-emit.c
2010/01/25 15:36 69,072 insn-extract.c
2010/01/25 15:36 91,249 insn-flags.h
2010/01/25 15:36 22,918 insn-opinit.c
2010/01/25 15:36 431,045 insn-output.c
2010/01/25 15:36 671 insn-peep.c
2010/01/25 15:36 1,227,452 insn-recog.c
2010/01/25 15:36 105,432 integrate.c
2010/01/25 15:36 8,435 integrate.h
2010/01/25 15:36 1,412 intl.c
2010/01/25 15:36 1,579 intl.h
2010/01/25 15:36 65,669 jump.c
2010/01/25 15:36 6,775 langhooks-def.h
2010/01/25 15:36 8,286 langhooks.c
2010/01/25 15:36 6,933 langhooks.h
2010/01/25 15:36 44,758 lcm.c
2010/01/25 18:55 4,646,954 libbackend.lib
2010/01/25 18:09 97,072 libcpp.lib
2010/01/25 15:36 8,342 libfuncs.h
2010/01/25 15:36 6,517 line-map.c
2010/01/25 15:36 4,948 line-map.h
2010/01/25 15:36 4,091 lists.c
2010/01/25 15:36 80,898 local-alloc.c
2010/01/25 15:36 334,496 loop.c
2010/01/25 15:36 16,555 loop.h
2010/01/25 15:36 8,939 machmode.def
2010/01/25 15:36 5,995 machmode.h
2010/01/25 15:36 9,877 mbchar.c
2010/01/25 15:36 1,606 mbchar.h
2010/01/25 15:36 6,662 mkdeps.c
2010/01/25 15:36 2,734 mkdeps.h
2010/01/25 15:36 157,341 optabs.c
2010/01/25 15:36 10,819 optabs.h
2010/01/25 15:36 181 options.h
2010/01/25 15:36 21,825 output.h
2010/01/25 15:36 2,342 params.c
2010/01/25 15:36 4,002 params.def
2010/01/25 15:36 3,209 params.h
2010/01/25 15:36 29,598 predict.c
2010/01/25 15:36 4,220 predict.def
2010/01/25 15:36 1,511 predict.h
2010/01/25 15:36 8,068 prefix.c
2010/01/25 15:36 1,226 prefix.h
2010/01/25 15:36 18,933 print-rtl.c
2010/01/25 15:36 23,194 print-tree.c
2010/01/25 15:36 36,306 profile.c
2010/01/25 15:36 151,319 real.c
2010/01/25 15:36 17,686 real.h
2010/01/25 15:36 92,753 recog.c
2010/01/25 15:36 9,783 recog.h
2010/01/25 15:36 84,991 reg-stack.c
2010/01/25 15:36 80,443 regclass.c
2010/01/25 15:36 76,217 regmove.c
2010/01/25 15:36 54,158 regrename.c
2010/01/25 15:36 8,897 regs.h
2010/01/25 15:36 238,998 reload.c
2010/01/25 15:36 15,136 reload.h
2010/01/25 15:36 320,221 reload1.c
2010/01/25 15:36 127,333 reorg.c
2010/01/25 15:36 40,868 resource.c
2010/01/25 15:36 2,108 resource.h
2010/01/25 15:36 4,157 rtl-error.c
2010/01/25 15:36 19,617 rtl.c
2010/01/25 15:36 46,315 rtl.def
2010/01/25 15:36 85,494 rtl.h
2010/01/25 15:36 78,912 rtlanal.c
2010/01/25 15:36 13,432 sbitmap.c
2010/01/25 15:36 5,692 sbitmap.h
2010/01/25 15:36 48,960 sched-deps.c
2010/01/25 15:36 9,715 sched-ebb.c
2010/01/25 15:36 12,684 sched-int.h
2010/01/25 15:36 91,622 sched-rgn.c
2010/01/25 15:36 23,861 sched-vis.c
2010/01/25 15:36 53,060 sdbout.c
2010/01/25 15:36 925 sdbout.h
2010/01/25 15:36 23,901 sibcall.c
2010/01/25 15:36 83,363 simplify-rtx.c
2010/01/25 15:36 37,727 ssa-ccp.c
2010/01/25 15:36 22,962 ssa-dce.c
2010/01/25 15:36 66,530 ssa.c
2010/01/25 15:36 2,616 ssa.h
2010/01/25 15:36 9,369 stab.def
2010/01/25 15:36 197,862 stmt.c
2010/01/25 15:36 67,272 stor-layout.c
2010/01/25 15:36 4,854 stringpool.c
2010/01/25 15:36 17,680 system.h
2010/01/25 15:36 7,154 target-def.h
2010/01/25 15:36 8,282 target.h
2010/01/25 15:36 578 timevar.h
2010/01/25 15:36 2,779 tm-preds.h
2010/01/25 15:36 122 tm_p.h
2010/01/25 15:36 159,578 toplev.c
2010/01/25 15:36 5,483 toplev.h
2010/01/25 15:36 15,536 tree-check.h
2010/01/25 15:36 24,157 tree-dump.c
2010/01/25 15:36 2,965 tree-dump.h
2010/01/25 15:36 47,099 tree-inline.c
2010/01/25 15:36 1,592 tree-inline.h
2010/01/25 15:36 138,337 tree.c
2010/01/25 15:36 41,525 tree.def
2010/01/25 15:36 131,273 tree.h
2010/01/25 15:36 481 typeclass.h
2010/01/25 15:36 148,071 unroll.c
2010/01/25 15:36 152,960 varasm.c
2010/01/25 15:36 2,865 varray.c
2010/01/25 15:36 11,029 varray.h
2010/01/25 15:36 173 version.c
2010/01/25 15:36 118 version.h
2010/01/25 15:36 55,043 vmsdbgout.c
2010/01/25 15:36 25,660 winnt.c
2010/01/25 15:36 13,860 xcoffout.c
いらないと思われるファイル達。
cpディレクトリ内
2010/01/25 15:34 176,585 call.c
2010/01/25 15:34 15,048 cfns.h
2010/01/25 15:34 255,601 class.c
2010/01/25 15:34 4,299 cp-lang.c
2010/01/25 15:34 11,975 cp-tree.def
2010/01/25 15:34 190,445 cp-tree.h
2010/01/25 15:34 39,521 cvt.c
2010/01/25 15:34 466,028 decl.c
2010/01/25 15:34 2,005 decl.h
2010/01/25 15:34 162,934 decl2.c
2010/01/25 15:34 11,308 dump.c
2010/01/25 15:34 78,045 error.c
2010/01/25 15:34 25,427 except.c
2010/01/25 15:34 3,843 expr.c
2010/01/25 15:34 14,078 friend.c
2010/01/25 15:34 107,563 init.c
2010/01/25 15:34 47,149 lex.c
2010/01/25 15:34 3,410 lex.h
2010/01/25 15:34 329 Makefile
2010/01/25 15:34 73,898 mangle.c
2010/01/25 15:34 32,018 method.c
2010/01/25 15:34 6,174 operators.def
2010/01/25 15:34 9,936 optimize.c
2010/01/25 15:34 442,688 parse.c
2010/01/25 15:34 2,361 parse.h
2010/01/25 15:34 322,662 pt.c
2010/01/25 15:34 6,496 ptree.c
2010/01/25 15:34 10,533 repo.c
2010/01/25 15:34 45,877 rtti.c
2010/01/25 15:34 82,452 search.c
2010/01/25 15:34 73,561 semantics.c
2010/01/25 15:34 42,716 spew.c
2010/01/25 15:34 70,234 tree.c
2010/01/25 15:34 219,474 typeck.c
2010/01/25 15:34 42,890 typeck2.c
gccディレクトリ内
2010/01/25 15:36 12,446 cppmain.n
2010/01/25 15:36 10,559 dwarf.h
2010/01/25 15:36 3,024 halfpic.h
2010/01/25 15:36 1,514 stack.h
2010/01/25 15:36 6,913 vmsdbg.h
2010/01/25 15:36 8,004 xcoffout.h
総ソース18MBが3MB近く減ったぞw これでいっちゃうかw
あと、生成されるものも、cc1・cpp0から、28GOcc1・28GOcpp0...
**28GO_K
まず、いくつかのものが.g01化してるので当然efg01相当がいる...
***aksa
とりあえずソースをg01のものに入れ替え。
%%COLOR(red){コンパイル実験はまだ}%%でけた。ついでに名前...
COLOR(red){バージョン表記搭載まだなんだけど・・・なんぞこ...
・・・まいったなぁ・・・Usageのメッセージなんぞでかく占め...
static unsigned char cmdusg[] = { ベ...
0x86, 0x50, 0...
0x88, 0x88,...
0x02, 'o', 'f', 's', 0x11, '#', 0x0c,...
0x11, '-', 'r', 0x20, 0x1c,...
0x02, 'e', 'i', 'p', 0x11, '#', 0x0c,...
0x00, 'd', 0x11, '#', 0x0c,...
0x02, 'l', 'i', 'n', 0x11, '#', 0x0c,...
0x40 0...
};
ばんざーい! 解析できたーーーーー!!!!!
・・・バージョン表記はefg01側で考えないといけないのね・・...
COLOR(blue){''結論!!!'' 今回はバージョン表記は見送り...
***bim2g01
追加した。
COLOR(blue){でけた!}
***bim2hrb
乗せかえた。
COLOR(blue){でけた!}
***bim2obj
乗せかえた。
COLOR(blue){でけた!}
***bim2ucc
追加。
COLOR(blue){でけた!}
***cpyとcpyc
追加。
COLOR(blue){でけた!}
***gas2nask
追加。同時にtools*とfunc内のgas2nask関連のものを削除
COLOR(blue){でけた!}
***golib00
追加。同時にtools*とfunc内のgolib00関連のものを削除
COLOR(blue){でけた!}
***makefontc
名前が違うな・・・追加。同時にmakefontを削除
COLOR(blue){でけた!}
COLOR(red){makefntcを採用。aska版はまた今度・・・}
***mtek2org
追加。
COLOR(blue){でけた!}
***Nasuka
追加。同時にtools*とfunc内のnask関連のものを削除
COLOR(blue){でけた!}
***naskconv0
追加。同時にtools*とfunc内のnaskconv関連のものを削除
COLOR(blue){でけた!}
***obj2bim
載せ変え。同時にautodec関連のものを削除
COLOR(blue){でけた!}
***rjcg01
追加。
COLOR(blue){でけた!}
***sjisconv
追加。同時にtools*とfunc内のsjisconv関連のものを削除
COLOR(blue){でけた!}
***toolstdc・toolw32
このディレクトリは空になったので削除
***g01libcとg01libc1
内部にはオブジェクトファイルあり。ライセンスの確認が必要...
-g01libc内の_chkstk.oは例の条件付GPLのヤツと同一であるこ...
-g01libc1内のものはみんなKタン作であることを確認。(考え...
*gas2naskに例の問題が?
g01化された最新(たぶん)のgas2naskに例の
skip:adcl %edx, 20(%ecx)
skip:adcl %edx, 20(%esi)
エラーが出ることが判明。これを修理。~
COLOR(blue){その意味では初のg01アプリのバージョンアップw...
・・・あれ? 前のと違うじゃんこれ!
**検証
以前にも似たバグがあった。今、手動でbim2bin.cを中間コンパ...
あったあった。二箇所。 つまり、上記のエラーは、gas2nask...
(前回と違い、今回はgas2naskのソースは最新。うへぇ~! ...
これはようするに、i386 CPUのオペランドとニーモニックの一...
SIZE(22){''だれかそういうのの載ってるURL教えてけれ!!''}~
ググっても全然みつからないよ・・・orz・・・
**手がかりがあったぞ
adclは、''拡張加減算''と呼ばれるものらしい。
・・・やっとこさ、NASMの解説サイトを見つけたんだが・・・・~
http://ryujin.kuis.kyoto-u.ac.jp/~nobu/study/nasm/nasm.html
これからこれを読むのか・・・頭クラクラしてきた・・・
**お得意のやっつけ変化球
実験的にadclの行を抜いてgas2naskしてみた。するってーと、N...
_rc_encode0: _rc_encode0:
pushl %ebp PUSH EBP
movl %esp, %ebp MOV EBP,ESP
movl 8(%ebp), %ecx MOV ECX,DWORD [8+E...
shrl 4(%ecx) SHR DWORD [4+ECX],1
cmpl $0, 12(%ebp) CMP DWORD [12+EBP],0
jne L4079 JNE L4079
movl 4(%ecx), %eax MOV EAX,DWORD [4+E...
xorl %edx, %edx XOR EDX,EDX
addl %eax, 16(%ecx) ADD DWORD [16+ECX]...
; adcl %edx, 20(%ecx)
L4079: L4079:
movl 4(%ecx), %eax MOV EAX,DWORD [4+E...
cmpl $16777215, %eax CMP EAX,16777215
また、adcl、そしてそれに良く似たaddl命令の働きがわかって...
| |>|>|GASソース| |>|>|Nasuka(NASM風)ソース|
|addl命令| addl | %eax | 16(%ecx) | | ADD | DWOR...
これらの比較から、まだ未確認だがこういう予測が立ってきた...
-COLOR(blue){多くの命令は、GASの場合、おケツにlが付いてい...
-COLOR(blue){第一オペランドと第二オペランドが逆}
・・・つーことはだよ? x86に、''ADC''という命令がダイレ...
**出ました!乱暴者!!!
どうもx86には、''ADC''という命令はあるっぽい(まだ、調べ...
さっき出来た.nasに、手書きでADC命令を書きこんでNasukaにか...
さぁ!動くか!? うごくのかあぁぁぁぁ!!!!
COLOR(blue){動いちゃうんだからやめられないよなホントww...
- -osacmp -tek0 正常動作。出力ファイルに違いがない!
- -osacmp -tek1 正常動作。出力ファイルに違いがない!
- -osacmp -tek5 正常動作。出力ファイルに違いがない!
完璧だ・・・私は完璧だ! 今日から戦闘力10万の完璧超人を...
**貴様風情に北斗1800年の歴史を極めることなどできない
・・・でさ・・・gas2naskどうすんのよ・・
・・・・・・・・・・・・・orz・・・・・・・・・・・・・・・
さてgas2naskのソースを眺めてると、acDl(ADD)命令の定義が...
・・・これは、オペランドが一個しかないもの、2個あるものっ...
ふむ。大体合ってると思う。one_param内にはCALLやJPがあるが...
しかしそうなると、ADDにはオペランドが一個っていう場合があ...
あぁぁぁっと!勘違いだ! ADDにはパラメータ一個は存在しな...
うーん・・・ADDに対してFADDはFPUを使っての命令・・・と。...
しかし、逆に、これのCF関連命令であるADCに、FADCっていう命...
たぶんこれで合っているはず。adcl(ADC)命令には、パラメー...
なので、たぶん、adclの定義はtwo_param内に追加すればいいは...
**ソース内の定義の意味は?
gas2naskのソース内では、たとえばaddlの場合、
"1addb ADD",
"4addl ADD",
"2addw ADD",
こんなことをしている。先頭の数値とお尻の一文字。これはど...
*いけた?でもわかんねw
"1addb ADD",
"4addl ADD",
"2addw ADD",
"4adcl ADD",
もうわっかんないので無理やりこんなことしてみたら、ちゃん...
*復帰~
うーん・・・思うところもあるけど、本来の目的であるhidetol...
(どーせこれは、GOでもなんでもない。28GOであり、hidetolな...
*そんなわけで第一期完成
実行ファイル
#ref(hidetol_8.exe)
ソース
#ref(hidetol_8_src.exe)
COLOR(red){まだOSASKもなんもコンパイルしてません・・・自...
**OSASKコンパイル
・・・ダメでした・・・orz・・・
で、問題を検証してみたんだけど、どうもpokonがおかしい。で...
-差を見てみると、なんとかくだけど規則的に差が出ているよう...
-そもそも、ほんのわずかだけど、サイズが異なる
でね。こりゃ、obj2bimがバグってるのかぁ?っていうと、winm...
・・・どゆことなんだべか???
COLOR(blue){おぉぉっとぉ! 動いたぞ!!!}
二つの差。それは、rulファイル(各々専用)。ちょっとヤマカ...
元々のmak_pl0.txt こうしますた!
STK_PK_AT = 1m STK_PK_AT = 64k
STK_PK_TW = 1m STK_PK_TW = 64k
STK_PK_NE = 1m STK_PK_NE = 64k
これでコンパイルかけてみた。やっぱり同じにはならないんだ...
オレは天才だあぁぁぁ! どんな言語もたちどころに習得でき...
**はりぼて
こーっちもイケたぞおぉぉ!!!
リリース近し!! w
**qemuが起動しないミス
例によってhikarupspさんが見つけてくれた!!
qemuの起動に問題があったので一部やり直しました。
#ref(hidetol_8_2.exe)
*リリース向け準備
たぶんもう問題はないと思う。リリースに向けて最後の準備。
で!
この版ではコマンドそのものやパラメータがいろいろ変化して...
Linuxとかならpatchを流せばいいんだけどWinの場合はねぇ・・・
そんなわけで、とりあえずご用意。
**OSASK4.7の代替
[[ここ>http://osask.net/w/540.html]]からOSAKA Ver4.7を落...
コイツはhidetol_8で一発コンパイルできるようにMakefile関係...
**はりぼての代替
#ref(harib27f_x.zip)
こいつは「30日で出来る!OS自作入門」付属CD-ROM内の、30日...
harib27_x
├app_mak.txt
├apilib
│ └Makefile
├haribote
│ └Makefile
└gvuiew
└Makefile
*リリース完了! ('10/2/1)
リリースが完了しましたので、このページは凍結♪ 添付も引っ...
ページ名: