⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rmrd.s

📁 linux下从网卡远程启动
💻 S
字号:
; rmrd.S  -  DOS program to remove ramdisk;; Copyright (C) 1996-1998 Gero Kuhlmann   <gero@gkminix.han.de>;;  This program is free software; you can redistribute it and/or modify;  it under the terms of the GNU General Public License as published by;  the Free Software Foundation; either version 2 of the License, or;  any later version.;;  This program is distributed in the hope that it will be useful,;  but WITHOUT ANY WARRANTY; without even the implied warranty of;  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the;  GNU General Public License for more details.;;  You should have received a copy of the GNU General Public License;  along with this program; if not, write to the Free Software;  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.#if	!defined(USE_NASM) && !defined(USE_AS86)#define	USE_AS86#endif#ifdef	USE_AS86#define	CON(x)		*x#define	BCON(x)		*x#define	JMP(x)		jmp x#define	STRDECL(s)	.ascii	s#endif#ifdef	USE_NASM#define	CON(x)		x#define	BCON(x)		byte x#define	JMP(x)		jmp short x#define	STRDECL(s)	db	s#endif#ifdef	USE_AS86	.text	entry	start#endif#ifdef	USE_NASM	text#endif	org	0x100start:	push	cs	pop	ds	xor	ax,ax	mov	es,ax	mov	si,CON(rdsig)	mov	di,CON(0xF1) * 4	; check ramdisk driver signature	mov	cx,CON(4)	repz	cmpsb	jnz	start4	mov	ax,CON(0x9C00)	int	0xF8			; check if a ramdisk driver is	cmp	ax,CON(0x009C)		; installed	je	start1start4:	mov	al,BCON(1)	mov	dx,CON(noramd)	JMP(start9)start1:	mov	ax,CON(0x9C03)	int	0xF8			; get ramdisk ID	or	cl,cl			; has to be drive A: (e.g. floppy)	jz	start2	mov	al,BCON(2)	mov	dx,CON(noflop)	JMP(start9)start2:	mov	ax,CON(0x9C04)	int	0xF8			; remove ramdisk	or	al,al	jz	start3	mov	al,BCON(3)	mov	dx,CON(rderr)	JMP(start9)start3:	xor	al,al	mov	dx,CON(rdok)start9:	push	ax	mov	ah,BCON(0x09)	int	0x21			; print error message	mov	dx,CON(crlf)	mov	ah,BCON(0x09)	int	0x21			; print CR/LF	pop	ax	mov	ah,BCON(0x4C)	int	0x21			; terminate program; Data areardsig:	STRDECL("NetB")noramd:	STRDECL("No ramdisk found$")noflop:	STRDECL("Ramdisk is not drive A:$")rderr:	STRDECL("Can't remove ramdisk$")rdok:	STRDECL("Ramdisk removed$")crlf:	db	0x0D,0x0A	STRDECL("$")

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -