首页 > 其他分享 >Mac 中安装 bochs 并启动

Mac 中安装 bochs 并启动

时间:2024-11-11 15:19:51浏览次数:1  
标签:bin boot mov Mac bochs ax 安装

  1. 安装 bochs

    直接使用 brew 进行安装,若没有下载 brew 工具, 参见 https://brew.idayer.com

    brew install bochs
    
    ==> Fetching dependencies for bochs: libtool and sdl2
    

    会自动安装 libtoolsdl2 工具,安装成功后默认安装目录为: /usr/local/Cellar/bochs/2.8

  2. 创建软盘
    首先进入项目目录,输入如下命令
    bximage

    bximage-img

  3. 编写汇编代码
    代码如下,存储为 boot.asm 文件

           org 7c00h
           mov ax, cs
           mov ds, ax
           mov es, ax
           call DispStr
           jmp $
      DispStr:
           mov ax, BootMessage
           mov bp, ax
           mov cx, 16
           mov ax, 01301h
           mov bx, 000ch
           mov dl, 0
           int 10h
           ret
      BootMessage: db "Hello OS World"
      times 510 - ($-$$) db 0
      dw 0xaa55
    
    
  4. 编译汇编代码
    我们使用 nasm 来汇编 boot.asm 生成操作系统的二进制代码。首先需要安装 nasm

    brew install nasm

    进入项目目录,并使用如下命令生成 boot.bin文件

    nasm boot.asm -o boot.bin

  5. 将编译后的代码写入软盘中
    使用如下命令,把 bin 文件(512 字节)写入 a.img 软盘中

    dd if=boot.bin of=a.img bs=512 count=1 conv=notrunc

    注意 boot.bin 和 a.img 文件必须在项目目录下

    dd-write-boot

  6. 配置启动信息

    找到bochs安装目录下的配置路径:/usr/local/Cellar/bochs/2.8/share/doc/bochsrc-sample.txt
    关于配置路径问题,标志就是找到bochsrc-sample.txt该文件。不同的电脑、不同的bochs版本可能会有区别。

    img

    拷贝 bochsrc-sample.txt 文件,并重命令为 bochsrc, 加入如下配置

    display_library: sdl2
    
    romimage: file=$BXSHARE/BIOS-bochs-latest, options=fastboot
    
    vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
    
    mouse: enabled=0
    
    floppya: 1_44=a.img, status=inserted
    
    boot: floppy
    
    log: bochsout.txt
    
    logprefix: %t%e%d
    
    # memory: guest=512, host=256, block_size=512
    
  7. 启动bochs
    输入启动命令 bochs -f bochsrc

    img

    结果显示
    img

  8. 项目目录结构如下
    img

    项目地址

标签:bin,boot,mov,Mac,bochs,ax,安装
From: https://www.cnblogs.com/runningwater-table/p/18539643

相关文章

  • 【AE2024】Adobe After Effects专业视频特效制作软件下载安装(附百度云链接)
    一、AdobeAfterEffects软件简介1.什么是AdobeAfterEffectsAdobeAfterEffects,简称AE,是Adobe公司推出的专业视频特效制作软件,广泛用于影视后期制作、视频剪辑、动画制作等领域。AE在图像合成、视觉特效和动态图形制作方面表现出色,能够帮助用户创建各种复杂的视觉......
  • 安装Mixly2.0 RC4和CP210x驱动
    Mixly(米思齐)是一款图形化编程软件。用户可以通过拼接积木块的方式来编写程序。目前为止,Mixly已经支持Arduino,micropython,python等编程语言。简介Mixly(米思齐)是在北京师范大学傅骞博士团队组织开发的一款国内自主研发,且免费开源的图形化编程工具。在国内外都掀起创客教育的......
  • 搭建云网站数据处理的环境——安装docker
    1、打开会话查询docker版本号输入:docker-v得到相关版本号回复:例如:2、在终端中输入命令来查看GPU驱动版本输入:nvidia-smi3、添加或者修改docker配置文件输入:cd/etc/docker再输入:sudovimdaemon.json进入文本修改界面点击按键“i”进行修改,修改内容如下:点击查看代......
  • windows11 安装驱动无法验证此设备所需的驱动程序的数字签名。
    参考 Win11和Win10怎么禁用驱动程序强制签名?关闭Windows系统驱动强制签名的技巧?-知乎参考  windows10该值受安全引导策略保护,无法进行修改或删除。禁用驱动程序强制签名_该值受安全引导策略保护无法进行修改或删除-CSDN博客 什么是驱动程序签名?驱动程序签名又叫做驱动......
  • ELK的ElasticStack安装
    目录传送门前言一、组件概念各组件概念EFKELKELFKELFK+kafka二、下载地址三、window下7.8版本安装单机四、window下7.8版本安装集群五、Linux下7.8版本安装单机1、ES安装2、ES-HEAD安装3、IK中文分词器安装六、Linux下7.8版本安装集群传送门SpringMVC的源码解析(精......
  • Linux安装jdk
    Linux安装jdk下载JDK安装包前往Oracle官网或其他JDK发行版网站,下载适合Linux系统的JDK安装包(可执行命令lscpu,查看Architecture字段确定)。创建安装目录在/usr/local目录下创建用于存放JDK安装包的目录,例如/usr/local/javasudomkdir/usr/local/javacd/usr/local/java上......
  • mongoDB安装
    1、执行安装包文件进行安装,选择自定义路径,安装在根目录,如果不是根目录配置服务时容易出错,导致服务起不来2、我的安装在了C盘MongoDB,安装完之后,在根目录创建data文件夹,在data文件夹里创建db、log文件夹3、以管理员身份运行CMD,输入:cdC:\MongoDB\bin4、mongod--dbpathC:\da......
  • Rocky9系统安装PostgreSQL
    官网https://www.postgresql.org/环境查看安装登录官网根据平台选择帮助文档sudodnfinstall-yhttps://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpmsudodnf-qymoduledisablepostgresqlsudodnfinst......
  • brew 安装软件提示 Can't locate IPC/Cmd.pm in @INC 解决
    在使用brew安装OpenSSL时遇到如下错误:==>perl./Configure--prefix=/data2/lx/.local/opt/homebrew/Cellar/openssl@3/3.4.0--openssldir=/data2/lx/.local/opt/homebrew/etc/openssl@3--libdir=libno-ssl3no-ssl3-methodno-zlibLast15linesfrom/data2/lx/.cach......
  • centos7安装mysql8
    1、首先检查是否有安装过mysql(有则需要卸载),命令如下:rpm-qa|grepmysqlrpm-qa|grepmariadb2、卸载mariadbrpm-e--nodepsmariadb-libs-5.5.68-1.el7.x86_643、备份yum源源文件为了保存原有默认配置及防止误操作,先做备份mv/etc/yum.repos.d/CentOS-Base.repo/etc......