浙林龙哥

   :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

这几天最头疼的一个问题就是磁盘引导程序,就是boot.asm和setup.asm两个文件的问题,我发现,
用int13读磁盘,如果设置systemsize=5k,那么没有问题,
但是=10k的时候,根本就不行了,


真不知道为啥,需要注意的是,这个问题在vmware和boch下都没有,但是用我的真机就是不行,别人的也不行.
  最后,我的代码简化到了不能再简,就是在kernel.c里头打个字到屏幕,只要读盘的那个大小设置到10k,这个字就打不出来,设置5k就没有问题.  

回答:你那个问题我估计是你没有换磁头的原因,1.44m磁头真实的排法是

0磁道0面-->0磁道1面-->1磁道0面-->1磁道1面....

每磁道又有18个扇区,每1扇区有512字节,因此,如果你读的数量造过1个磁道的容量了,你就需要换面(也即换磁头号)了~~~

posted on 2005-02-27 22:55  浙林龙哥  阅读(4223)  评论(0编辑  收藏  举报