;ELC   
;;; Compiled
;;; in Emacs version 29.4
;;; with all optimizations.


#@317 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.

(fn FILENAME)
(defalias 'dos-convert-standard-filename #[257 "\211;\203\f \301\302\"\203 \207\211GSH\303>\203\" \304\305SO!\306P\207\307\310W\203@ \310H\311=\203@ \301\312\"\204@ \305\313O\202C \314!\211GS\315\316!!\211GSH\307\211\317 \203i \301\320\"\211\262\203	\321I\210\202W \322\235\204	\305H\323U\203| \305\324I\210\325\326\"\204\232 G\327V\203\232 \301\330\331#\211\262\203\232 \323I\210\301\332\"\211\262\203\254 \324I\210\202\232 \325\326\"\206\265 G\327V\203\306 \305\327O\326\327\307OQ\262\325\326\"\206\320 GS\262G\333\\V\203\343 \305\333\\O\262\325\326T#\203\374 \325\326T#\262\324I\210\202\343 \334>\203	\211GSI\210;\203#H\335>\203#\304\305O!\306P\202'\304!P)\207" [file-name-handler-alist string-match "\\`\\([a-zA-Z]:\\)?[/\\]?\\'" (47 92) dos-convert-standard-filename 0 "/" nil 1 58 "[/\\]" 2 file-name-directory copy-sequence file-name-nondirectory msdos-long-file-names "[?*:<>|\" -]" 33 ("" "." "..") 46 95 string-search "." 8 "[-_]" 5 "[^-a-zA-Z0-9_.%~^$!#&{}@`'()\200-\376]" 4 (126 35) (47 92)] 13 (#$ . 84)])#@53 Truncate FILENAME to DOS 8+3 limits.

(fn FILENAME)
(defalias 'dos-8+3-filename #[257 "\211;\203\f \211G\301W\203 \207\211GSH\302>\203\" \303\304SO!\305P\207\306\307W\203@ \307H\310=\203@ \311\312\"\204@ \304\313O\202C \314!\211GS\315\316!!\211GSH\306\317\320\"\262\211\203\202 \321\\V\203l \304\321\\O\262\211\322V\203\216 \304\322O\320T\306OQ\262\202\216 \322V\203\216 \304\322O\262\323=\203\233 \211GSI\210;\203\265 H\324>\203\265 \303\304O!\305P\202\271 \303!P)\207" [file-name-handler-alist 5 (47 92) dos-8+3-filename 0 "/" nil 1 58 string-match "[/\\]" 2 file-name-directory copy-sequence file-name-nondirectory string-search "." 4 8 126 (47 92)] 13 (#$ . 1495)])#@387 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.

(fn FILE-NAME)
(defalias 'dosified-file-name #[257 "\211\300\230\203 \301\207\207" [".dir-locals" "_dir-locals"] 3 (#$ . 2212)])
(defalias 'dos-set-default-process-coding-system #[0 "\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 #[0 "\300\207" [nil] 1])
(add-hook 'before-init-hook 'dos-reevaluate-defcustoms)
(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 #[0 "\300\301\302\"\207" [make-vector 8 0] 3])#@18 

(fn REGS NAME)
(defalias 'dos-register-value #[514 "\301\"A\211:\203 @HA\302U\203 \211\303\246\207\211\303\245\207\211\247\203& H\207\304\207" [dos-register-name-alist assoc 0 256 nil] 6 (#$ . 3319)])#@24 

(fn REGS NAME VALUE)
(defalias 'dos-set-register-value #[771 "\211\247\203O \211\301Y\203O \302\"A\211:\203A @H\303\304\"@A\301U\2031 \305\303\306\"\"\202; \305\303\304\"\307\310\"\"I\266\202O \211\247\203N \303\311\"I\210\210\207" [dos-register-name-alist 0 assoc logand 255 logior 65280 ash 8 65535] 13 (#$ . 3536)])#@153 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.

(fn REGS)
(defalias 'dos-intdos #[257 "\300\301\"\207" [int86 33] 4 (#$ . 3880)])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put dos-intdos speed -1 put byte-optimizer byte-compile-inline-expand] 5)#@41 Change the number of screen rows to 25.
(defalias 'dos-mode25 #[0 "\300\301 \302\303#\207" [set-frame-size selected-frame 80 25] 4 (#$ . 4246) nil])#@226 Change 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 #[0 "\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 (#$ . 4401) nil])
(provide 'dos-fns)
