secondboot.cs/0.3.0対応 の変更点



 [[secondboot.cs]]
 
 ** secondboot.csの0.3.0対応
 
 2005年1月30日版(Mona-0.2.0向け)に対して必要な修正
 - マクロ名変更への対応とjmpの際にヘッダサイズを加算するだけ
 
  diff -ur MonaNET16.orig/Makefile MonaNET16/Makefile
  --- MonaNET16.orig/Makefile	2005-01-30 01:06:00.000000000 +0900
  +++ MonaNET16/Makefile	2005-01-31 04:39:25.062500000 +0900
  @@ -2,7 +2,7 @@
   
   TARGET = I8086.dll secondboot.bin
   ILOPT  = /OPT:2
  -ASMFLG = -DKERNEL_ADDR=0x800
  +ASMFLG = -DREL_KERNEL_ADDR=0x0800 -DMONA_HEADER_SIZE=0x10
   
   all: .subdirs $(TARGET)
   
  diff -ur MonaNET16.orig/secondboot32.asm MonaNET16/secondboot32.asm
  --- MonaNET16.orig/secondboot32.asm	2005-01-30 00:31:00.000000000 +0900
  +++ MonaNET16/secondboot32.asm	2005-01-31 04:36:13.765625000 +0900
  @@ -75,8 +75,8 @@
           mov     ss, ax          ; is 0x18
           mov     esp, 0x80000    ; sp is 3MB
           push    eax
  -        jmp     KERNEL_ADDR
  +        jmp     REL_KERNEL_ADDR + MONA_HEADER_SIZE
   ;  hang:
   ;          jmp hang
   
  -        times KERNEL_ADDR-($-$$) db 0
  +        times (REL_KERNEL_ADDR)-($-$$) db 0
 
 - src/kernel/Makefileの修正
 - src/kernel/Makefileの修正(※要make clean)
 
  REL_KERNEL_ADDR  = 0x0800
  KERNEL_START_ADDR= 0x1810
 
 ** secondboot.asmの0.2.0と2005年1月14日現在のCVSとの差分
 
  --- secondboot-0.2.0.asm	2005-01-14 22:38:23.390625000 +0900
  +++ secondboot.asm	2005-01-14 22:38:37.734375000 +0900
  @@ -1,13 +1,13 @@
   ;-------------------------------------------------------------------------------
   ; Name        : secondboot.asm
   ; Description : firstboot read this from disk and execute.
  -; Revision    : $Revision: 1.11 $ $Date: 2004/04/30 18:51:28 $
  +; Revision    : $Revision: 1.13 $ $Date: 2004/12/13 13:51:08 $
   ; Copyright (c) 2002, 2003 and 2004 Higepon
   ; All rights reserved.
   ; License=MIT/X Licnese
   ;-------------------------------------------------------------------------------
   %define fat              0x6000
  -%define file_buf_seg     0x9000
  +%define file_buf_seg     (MONA_CFG_ADDR / 16)
   %define vesa_info        0x0800
   %define vesa_info_detail 0x0830
   
  @@ -84,7 +84,7 @@
           mov     cx, ax
           add     bx, 0x0200
   ;         jnc     file_load
  -        cmp     bx, 0x1000      ; limit file size
  +        cmp     bx, MONA_CFG_SIZE ; limit file size
           jc      file_load
   ;         mov     bx, es
   ;         add     bh, 0x10
  @@ -422,8 +422,8 @@
           mov     ss, ax          ; is 0x18
           mov     esp, 0x80000    ; sp is 3MB
           push    eax
  -        jmp     KERNEL_ADDR
  +        jmp     REL_KERNEL_ADDR + MONA_HEADER_SIZE
   ;  hang:
   ;          jmp hang
   
  -        times KERNEL_ADDR-($-$$) db 0
  +        times (REL_KERNEL_ADDR)-($-$$) db 0
 
 ** コメント
 
 #comment(below)
 -0.3.0α1がリリースされたので試してみましたが簡単に対応できました。どこでうまくいかなかったのか謎なくらい。。。 --  SIZE(10){2005-01-31 (月) 06:13:24}
 - 「全部自分で抱え込む」点は自分では気づいていませんでしたが確かにそうですね。最低限動くものにまですら持っていけないで止まってしまうことが多いのも原因のひとつですが、これからは気をつけます。-- ひげぽん
 -プロジェクトマネジメント的にまずい点は、全部自分で抱え込んで、納得できるまでリリースしないような姿勢です。そのためマイルストーンに出来るポイントがなくて、0.2.0と現在のCVSをにらめっこするという飛躍が生じています。何らかの実装を施したら、それに対して最低限のリリースエンジニアリングを施して(実装が完璧でなくても構わないので、ともかく意図が伝わる程度に動く状態に仕上げておく)、リリースして外の人にお披露目することの重要性はそこなのです。技術供与とか、消化不良で援助募集とか、そういう行為は自分ひとりの中で閉じているものではないのですよ? --  SIZE(10){2005-01-14 (金) 22:50:54}
 -secondboot.asmに0.2.0からどういう変更をしてそれがどういう経緯なのかとか知ってるのはひげぽんさんだけでしょう?上に差分を貼っておきましたけど、そういうのは当然検討してsecondboot.csにも修正を施した上でうまくいかないと言っているのですよね?そういうのはちゃんと提示してください。既に試したことであれば貼るのにどんな手間がかかるのでしょう?そういう根回しがプロジェクトマネジメントとしては重要なのですよ。 --  SIZE(10){2005-01-14 (金) 22:43:14}
 -情報は何もなしで対処できるような神様いませんって。Monaに関しては、ひげぽんさんが神様なのです。連絡があったら詳細を伝えるつもり、というのは外の人には通じない論法ですから、残念! --  SIZE(10){2005-01-14 (金) 22:43:14}
 -最新版Monaへの取り込みでつまずいています。取り込んでいただける方またはアドバイスをいただける方はひげぽんまでお願いします。 -- [[ひげぽん]] SIZE(10){2005-01-13 (木) 16:23:34}

リロード   新規 編集 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS

Modified by mona
PukiWiki 1.4.6 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-ji
Powered by PHP 5.2.17
HTML convert time to 0.018 sec.