# Foxdisk2 **Repository Path**: luobing4365/foxdisk2 ## Basic Information - **Project Name**: Foxdisk2 - **Description**: 练手用的Foxdisk2第二版,有意思的多系统图形引导程序。仍旧使用汇编语言编写,在1.0的版本上,增加了分区管理功能。实现了我一直比较迷恋的渐变式按钮,以及Winodws式的对话框。 - **Primary Language**: 汇编 - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2021-09-19 - **Last Updated**: 2025-01-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Foxdisk2 #### 介绍 练手用的Foxdisk2第二版,有意思的多系统图形引导程序。仍旧使用汇编语言编写,在1.0的版本上,增加了分区管理功能。实现了我一直比较迷恋的渐变式按钮,以及Winodws式的对话框。 以下为Foxdisk2的基本界面和功能界面。 ##### 1. 主界面 ![主界面](https://images.gitee.com/uploads/images/2021/0919/091249_5bd08a5c_791211.png "foxdisk2_0.png") 主界面用来选择需要进入的系统,目前可以管理两个Windows系统的引导。在此界面上,使用F1键将唤出帮助菜单。 ##### 2. 分区管理 ![分区管理](https://images.gitee.com/uploads/images/2021/0919/091522_9f5a8443_791211.png "foxdisk2_1.png") 主界面上可以通过组合键ALT+P进入此功能菜单,可对分区进行磁道划分。以下为一个基本的分区管理菜单: ![外网分区管理](https://images.gitee.com/uploads/images/2021/0919/091731_48616d80_791211.png "foxdisk2_2.png") ##### 3. 功能设置 在主界面上,使用组合键ALT+P可以进入此菜单。它提供了等待时间设置、倒计时结束进入的系统、内外网系统密码设置的功能。 ![功能设置](https://images.gitee.com/uploads/images/2021/0919/093000_0f6c74cd_791211.png "foxdisk2_3.png") 以下为其中的密码设置功能: ![密码设置](https://images.gitee.com/uploads/images/2021/0919/093120_b7b77fe1_791211.png "foxdisk2_4.png") #### 软件架构 修改MBR区,指向Foxdisk1代码所存储的扇区。存储扇区包括LBA1至LBA62(一个磁道内),以保证不影响到操作系统区。 也即LBA0~LBA62共63个扇区为foxdisk1所用,以管理两个Windows系操作系统。 为了在Foxdisk1的基础上实现新的功能,规划了基本的时间中断以实现GUI框架,如图所示: ![时间中断规划](https://images.gitee.com/uploads/images/2021/0919/093431_43bee036_791211.jpeg "主程序与时间中断的配合(1).jpg") 在整个GUI框架中,最难处理的是鼠标部分。设计阶段对鼠标的规划如下图: ![输入图片说明](https://images.gitee.com/uploads/images/2021/0919/093642_9cd8dfc9_791211.jpeg "主程序与时间中断的配合(2).jpg") #### 安装教程 1. 编译源码,比如: ``` masm _60.asm link _60.obj exe2bin _60.exe _60.bin ``` 2. 使用工具setin(源码在/tools/setin下)进行安装:
` setin.exe -y _60.bin`
覆盖原始mbr:
` setin.exe -r _60.bin` #### 使用说明 本程序是在MASM6.11下开发的,也支持TASM编译。请尽量在虚拟机下使用学习,没有足够的硬盘知识,不要在实际的机器下操作。**Foxdisk2是会把你的分区表清除掉的** ,我主要也是用来练手的,并且用它进行双系统管理过一段时间。 #### 源码结构 根据需要的功能不同,对源代码进行了划分,比如mousedrv文件夹中是鼠标驱动,其他的文件夹就不一一解释了。 - /tools: ``` +/DisTillHZ: 汉字提取工具 +/setin: 安装工具。将Foxdisk1安装到硬盘上,使用bcc3.1编译 +/showlogo:显示图像的实验程序 ``` - /outfiles:编译好了的foxdisk2文件_60.bin,以及DOS下的演示程序TEST.exe。 - CCDos.BAT: 编译Foxdisk2的演示程序TEST的批处理 - ccofx.bat: 编译Foxdisk2的批处理