;ELC ;;; Compiled ;;; in Emacs version 27.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; #@302 Convert a standard file's name to something suitable for MS-DOS. This means to guarantee valid names and perhaps to canonicalize certain patterns. This function is called by `convert-standard-filename'. On Windows and DOS, replace invalid characters. On DOS, make sure to obey the 8.3 limitations. (defalias 'dos-convert-standard-filename #[(filename) ";\203\f\306\307\"\203\207G SH\310>\203'\311\312\313 S#!\314P\202B\315\316 W\203F\316H\317=\203F\306\320\"\204F\312\313\321#\202I\322!\211GS\323\324!!\211\211GSH$\315\211%&\325 \203y\306\326 \"\211%\203\" %\327I\210\202f \330\235\204\" \313H\331U\203\214 \313\332I\210\306\333 \"\204\253 G\334V\203\253\306\335 \336#\211%\203\253 %\331I\210\306\337 \"\211%\203\276 %\332I\210\202\253\306\333 \"\206\307 G\334V\203\330\312 \313\334#\340\312 \334\"Q\306\333 \"\206\342 GS& G&\341\\V\203\367\312 \313&\341\\#\306\333 &T#\203\306\333 &T#% %\332I\210\202\367$\342>\203\" \211GS$I\210 ;\203; \fH\343>\203;\311\312 \313\f#!\314P\202>\311 ! P.)\207" [filename flen file-name-handler-alist dir dlen-m-1 string string-match "\\`\\([a-zA-Z]:\\)?[/\\]?\\'" (47 92) dos-convert-standard-filename substring 0 "/" nil 1 58 "[/\\]" 2 file-name-directory copy-sequence file-name-nondirectory msdos-long-file-names "[?*:<>|\"-]" 33 ("" "." "..") 46 95 "\\." 8 "[-_]" 5 "[^-a-zA-Z0-9_.%~^$!#&{}@`'()\200-\376]" "." 4 (126 35) (47 92) lastchar i firstdot] 6 (#$ . 409)]) #@38 Truncate FILENAME to DOS 8+3 limits. (defalias 'dos-8+3-filename #[(filename) ";\203\fG\306W\203\207G SH\307>\203'\310\311\312 S#!\313P\202\323\314\315 W\203F\315H\316=\203F\317\320\"\204F\311\312\321#\202I\322!\211GS\323\324!!\211G SH\314\317\325 \"\211\203\227\326\\V\203\311 \312\326\\#\327V\203\244\311 \312\327#\330\311 T\"Q\202\244\327V\203\244\311 \312\327#\331\232\203\263 \211GSI\210 ;\203\314 \fH\332>\203\314\310\311 \312\f#!\313P\202\317\310 ! P.)\207" [filename flen file-name-handler-alist dir dlen-m-1 string 5 (47 92) dos-8+3-filename substring 0 "/" nil 1 58 string-match "[/\\]" 2 file-name-directory copy-sequence file-name-nondirectory "\\." 4 8 "." 126 (47 92) strlen lastchar firstdot] 6 (#$ . 1890)]) #@371 Return a variant of FILE-NAME that is valid on MS-DOS filesystems. This function is for those rare cases where `dos-convert-standard-filename' does not do a job that is good enough, e.g. if you need to preserve the file-name extension. It recognizes only certain specific file names that are used in Emacs Lisp sources; any other file name will be returned unaltered. (defalias 'dosified-file-name #[(file-name) "\301\230\203\302\207\207" [file-name ".dir-locals" "_dir-locals"] 2 (#$ . 2686)]) (defalias 'dos-set-default-process-coding-system #[nil "\301\211\207" [default-process-coding-system (undecided-dos . undecided-dos)] 2]) (add-hook 'before-init-hook 'dos-set-default-process-coding-system) (defalias 'dos-reevaluate-defcustoms #[nil "\300\207" [nil] 1]) (byte-code "\302\303\304\"\210\305\306\307\310#\210\311\310\211\2031 @\306N\203*\307N\204*\312\307\306N#\210 A\211\204*\313\306\307\314#\207" [prop --dolist-tail-- add-hook before-init-hook dos-reevaluate-defcustoms defvaralias register-name-alist dos-register-name-alist nil (saved-value saved-variable-comment) put make-obsolete-variable "24.1"] 6) (defvar dos-register-name-alist '((ax . 0) (bx . 1) (cx . 2) (dx . 3) (si . 4) (di . 5) (cflag . 6) (flags . 7) (al 0 . 0) (bl 1 . 0) (cl 2 . 0) (dl 3 . 0) (ah 0 . 1) (bh 1 . 1) (ch 2 . 1) (dh 3 . 1))) (defalias 'dos-make-register #[nil "\300\301\302\"\207" [make-vector 8 0] 3]) (byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias make-register dos-make-register nil make-obsolete "24.1"] 4) (defalias 'dos-register-value #[(regs name) "\305 \"A\211:\203$ \n@H\nA\306U\203\f\307\246\202 \f\307\245)\2020\n\247\203/ \nH\2020\310)\207" [name dos-register-name-alist where regs tem assoc 0 256 nil] 4]) (byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias register-value dos-register-value nil make-obsolete "24.1"] 4) (defalias 'dos-set-register-value #[(regs name value) "\247\203R\306Y\203R\307 \n\"A\211:\203D\f @H\310\311\"\f @ A\306U\2034\312\310 \313\"\"\202>\312\310 \311\"\314\315\"\"I\210*\202Q \247\203Q\f \310\316\"I\210)\f\207" [value name dos-register-name-alist where regs tem 0 assoc logand 255 logior 65280 ash 8 65535] 8]) (byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias set-register-value dos-set-register-value nil make-obsolete "24.1"] 4) #@142 Issue the DOS Int 21h with registers REGS. REGS should be a vector produced by `dos-make-register' and `dos-set-register-value', which see. (defalias 'dos-intdos #[(regs) "\301\302\"\207" [regs int86 33] 3 (#$ . 5058)]) (byte-code "\300\301\302\303#\210\304\305\301\306#\210\307\305\301\310#\207" [put dos-intdos byte-optimizer byte-compile-inline-expand defalias intdos nil make-obsolete "24.1"] 4) #@42 Changes the number of screen rows to 25. (defalias 'dos-mode25 #[nil "\300\301 \302\303#\207" [set-frame-size selected-frame 80 25] 4 (#$ . 5466) nil]) (byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias mode25 dos-mode25 nil make-obsolete "24.1"] 4) #@227 Changes the number of rows to 43 or 50. Emacs always tries to set the screen height to 50 rows first. If this fails, it will try to set it to 43 rows, on the assumption that your video hardware might not support 50-line mode. (defalias 'dos-mode4350 #[nil "\300\301 \302\303#\210\304\301 !\303=?\205\300\301 \302\305#\207" [set-frame-size selected-frame 80 50 frame-height 43] 4 (#$ . 5738) nil]) (byte-code "\300\301\302\303#\210\304\301\302\305#\210\306\307!\207" [defalias mode4350 dos-mode4350 nil make-obsolete "24.1" provide dos-fns] 4)