天天看点

MS-DOS 6.22 +Vim+masm 汇编环境

安装vim

个人习惯用 vim 编辑,因此稍微折腾了一下。不用这么麻烦直接用 edit 编辑也是可以的。

原来安装的 MS-DOS 7.10 虚拟机安装好vim后无法运行,所以改用了 MS-DOS 6.22。

vmware中安装好 dos 虚拟机,将下载好的 vim for dos 镜像文件(.iso)加载到虚拟机的 CD/DVD 中,进入相应盘,用LCOPY拷贝到相应磁盘,比如从d盘拷贝到c盘:

D:\> LCOPY D:\* C:\ /R/S
D:\> C:
C:\> SETUPVIM
           

LCOPY.exe是在D盘,所以命令要在D盘执行。现在也拷贝到C盘了。

然后就一路安装。

网上的这个直接用还不行,DOS在7.0以前的版本文件名最多8个字节,因此需要修改一些文件名,

vimrc_example.vim

会变成

vimrc~1.vim

,用move命令改回来就好了,然后

c:\dos\vim.bat

中的一些路径的引号也要去掉,才能正常使用。

_vimrc

C:\

根目录下。

安装 masm

从网上下载好 masm后,不能直接放到虚拟机里的 DOS 系统中,需要转成磁盘映像。但是,用mac 自带的磁盘工具转出来的iso或者cdr,文件格式是 macOS 扩展,DOS系统不能处理。因此要找个 windows 系统,在上面用UltraISO 将文件夹做成 iso。然后加载到虚拟机的 CD/DVD 中。也拷贝到c盘。

编写asm的Hello world程序

vim hello.asm

创建文件,编辑内容为

STACK SEGMENT STACK 
	DB 200 DUP(0)  
STACK ENDS

DATA SEGMENT
	BUF DB 'Hello world!$'  
DATA ENDS

CODE SEGMENT
    ASSUME CS:CODE,DS:DATA,SS:STACK  
  
START:
	MOV AX,DATA
    MOV DS,AX
    LEA DX,BUF
    MOV AH,9
    INT 21H
    MOV AH,4CH
    INT 21H
	CODE ENDS
END START
           

[ESC]然后

:x

保存退出。

C:> masm hello
           

一路回车

接着链接,也是一路回车:

C:> link hello
           

运行:

参考:

输出"HELLO WORLD" ASM

Vim73 for MS-DOS71 安装方法及简单的配置

┆凉┆暖┆降┆等┆幸┆我┆我┆里┆将┆ ┆可┆有┆谦┆戮┆那┆ ┆大┆始┆ ┆然┆

┆薄┆一┆临┆你┆的┆还┆没┆ ┆来┆ ┆是┆来┆逊┆没┆些┆ ┆雁┆终┆ ┆而┆

┆ ┆暖┆ ┆如┆地┆站┆有┆ ┆也┆ ┆我┆ ┆的┆有┆精┆ ┆也┆没┆ ┆你┆

┆ ┆这┆ ┆试┆方┆在┆逃┆ ┆会┆ ┆在┆ ┆清┆来┆准┆ ┆没┆有┆ ┆没┆

┆ ┆生┆ ┆探┆ ┆最┆避┆ ┆在┆ ┆这┆ ┆晨┆ ┆的┆ ┆有┆来┆ ┆有┆

┆ ┆之┆ ┆般┆ ┆不┆ ┆ ┆这┆ ┆里┆ ┆没┆ ┆杀┆ ┆来┆ ┆ ┆来┆

dos