home *** CD-ROM | disk | FTP | other *** search
- ;;;;;;;;;;;;;;;;;;;
- ;;;;
- ;;;; DOS
- ;;;;
- ;;;;;;;;;;;;;;;;;;;
-
- (if nil
- (eval-and-compile (setq byte-compile-warnings nil)))
-
- (defun dos-parse (args)
- (interactive "*p")
- (beginning-of-line)
- (let (beg)
- (setq beg (+ (point) 3))
- (end-of-line)
- (if (not (= beg (point)))
- (let (line)
- (setq line (downcase (buffer-substring beg (point))))
- (princ line)
- (if (eq (parse2 nil dos-verbs line) -1)
- (progn
- (sleep-for 1)
- (mprincl "Bad command or file name"))))
- (goto-char (point-max))
- (mprinc "\n"))
- (if (eq dungeon-mode 'dos)
- (progn
- (fix-screen)
- (dos-prompt)))))
-
- (defun dos-interface ()
- (dos-boot-msg)
- (setq dungeon-mode 'dos)
- (define-key dungeon-mode-map "\r" 'dos-parse)
- (dos-prompt))
-
- (defun dos-type (args)
- (sleep-for 2)
- (if (setq args (car args))
- (if (string= args "foo.txt")
- (dos-show-combination)
- (if (string= args "command.com")
- (mprincl "Cannot type binary files")
- (mprinc "File not found - ")
- (mprincl (upcase args))))
- (mprincl "Must supply file name")))
-
- (defun dos-invd (args)
- (sleep-for 1)
- (mprincl "Invalid drive specification"))
-
- (defun dos-dir (args)
- (sleep-for 1)
- (if (or (not (setq args (car args))) (string= args "\\"))
- (mprincl "
- Volume in drive A is FOO
- Volume Serial Number is 1A16-08C9
- Directory of A:\\
-
- COMMAND COM 47845 04-09-91 2:00a
- FOO TXT 40 01-20-93 1:01a
- 2 file(s) 47845 bytes
- 1065280 bytes free
- ")
- (mprincl "
- Volume in drive A is FOO
- Volume Serial Number is 1A16-08C9
- Directory of A:\\
-
- File not found")))
-
-
- (defun dos-prompt ()
- (mprinc "A> "))
-
- (defun dos-boot-msg ()
- (sleep-for 3)
- (mprinc "Current time is ")
- (mprincl (substring (current-time-string) 12 20))
- (mprinc "Enter new time: ")
- (read-line)
- (if (not batch-mode)
- (mprinc "\n")))
-
- (defun dos-spawn (args)
- (sleep-for 1)
- (mprincl "Cannot spawn subshell"))
-
- (defun dos-exit (args)
- (setq dungeon-mode 'dungeon)
- (mprincl "\nYou power down the machine and step back.")
- (define-key dungeon-mode-map "\r" 'dungeon-parse)
- (if (not batch-mode)
- (dungeon-messages)))
-
- (defun dos-no-disk ()
- (sleep-for 3)
- (mprincl "Boot sector not found"))
-
-
- (defun dos-show-combination ()
- (sleep-for 2)
- (mprinc "\nThe combination is ")
- (mprinc combination)
- (mprinc ".\n"))
-
- (defun dos-nil (args))
-