[movitz-cvs] CVS movitz/losp/x86-pc
ffjeld
ffjeld at common-lisp.net
Sat Apr 7 08:04:51 UTC 2007
Update of /project/movitz/cvsroot/movitz/losp/x86-pc
In directory clnet:/tmp/cvs-serv26637
Modified Files:
vga.lisp
Log Message:
Indentation.
--- /project/movitz/cvsroot/movitz/losp/x86-pc/vga.lisp 2007/03/26 18:04:04 1.12
+++ /project/movitz/cvsroot/movitz/losp/x86-pc/vga.lisp 2007/04/07 08:04:51 1.13
@@ -10,7 +10,7 @@
;;;; Author: Frode Vatvedt Fjeld <frodef at acm.org>
;;;; Created at: Tue Sep 25 14:08:20 2001
;;;;
-;;;; $Id: vga.lisp,v 1.12 2007/03/26 18:04:04 ffjeld Exp $
+;;;; $Id: vga.lisp,v 1.13 2007/04/07 08:04:51 ffjeld Exp $
;;;;
;;;;------------------------------------------------------------------
@@ -106,131 +106,131 @@
;;; VGA stuff ported from http://my.execpc.com/CE/AC/geezer/osd/graphics/modes.c
(defconstant +vga-state-80x25+
- '((:misc . #x67)
- (:sequencer
- #x03 #x00 #x03 #x00 #x02)
- (:crtc
- #x5F #x4F #x50 #x82 #x55 #x81 #xBF #x1F
- #x00 #x4F #x0D #x0E #x00 #x00 #x00 #x50
- #x9C #x0E #x8F #x28 #x1F #x96 #xB9 #xA3
- #xFF)
- (:graphics
- #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
- #xFF)
- (:attribute
- #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
- #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
- #x0C #x00 #x0F #x08 #x00)))
+ '((:misc . #x67)
+ (:sequencer
+ #x03 #x00 #x03 #x00 #x02)
+ (:crtc
+ #x5F #x4F #x50 #x82 #x55 #x81 #xBF #x1F
+ #x00 #x4F #x0D #x0E #x00 #x00 #x00 #x50
+ #x9C #x0E #x8F #x28 #x1F #x96 #xB9 #xA3
+ #xFF)
+ (:graphics
+ #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
+ #xFF)
+ (:attribute
+ #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
+ #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
+ #x0C #x00 #x0F #x08 #x00)))
(defconstant +vga-state-80x50+
- '((:misc . #x67)
- (:sequencer
- #x03 #x00 #x03 #x00 #x02)
- (:crtc
- #x5F #x4F #x50 #x82 #x55 #x81 #xBF #x1F
- #x00 #x47 #x06 #x07 #x00 #x00 #x01 #x40
- #x9C #x8E #x8F #x28 #x1F #x96 #xB9 #xA3
- #xFF)
- (:graphics
- #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
- #xFF)
- (:attribute
- #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
- #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
- #x0C #x00 #x0F #x08 #x00)))
+ '((:misc . #x67)
+ (:sequencer
+ #x03 #x00 #x03 #x00 #x02)
+ (:crtc
+ #x5F #x4F #x50 #x82 #x55 #x81 #xBF #x1F
+ #x00 #x47 #x06 #x07 #x00 #x00 #x01 #x40
+ #x9C #x8E #x8F #x28 #x1F #x96 #xB9 #xA3
+ #xFF)
+ (:graphics
+ #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
+ #xFF)
+ (:attribute
+ #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
+ #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
+ #x0C #x00 #x0F #x08 #x00)))
(defconstant +vga-state-40x25+
- '((:misc . #x67)
- (:sequencer
- #x03 #x08 #x03 #x00 #x02)
- (:crtc
- #x2D #x27 #x28 #x90 #x2B #xA0 #xBF #x1F
- #x00 #x4F #x0D #x0E #x00 #x00 #x00 #xA0
- #x9C #x8E #x8F #x14 #x1F #x96 #xB9 #xA3
- #xFF)
- (:graphics
- #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
- #xFF)
- (:attribute
- #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
- #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
- #x0C #x00 #x0F #x08 #x00)))
+ '((:misc . #x67)
+ (:sequencer
+ #x03 #x08 #x03 #x00 #x02)
+ (:crtc
+ #x2D #x27 #x28 #x90 #x2B #xA0 #xBF #x1F
+ #x00 #x4F #x0D #x0E #x00 #x00 #x00 #xA0
+ #x9C #x8E #x8F #x14 #x1F #x96 #xB9 #xA3
+ #xFF)
+ (:graphics
+ #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
+ #xFF)
+ (:attribute
+ #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
+ #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
+ #x0C #x00 #x0F #x08 #x00)))
(defconstant +vga-state-40x50+
- '((:misc . #x67)
- (:sequencer
- #x03 #x08 #x03 #x00 #x02)
- (:crtc
- #x2D #x27 #x28 #x90 #x2B #xA0 #xBF #x1F
- #x00 #x47 #x06 #x07 #x00 #x00 #x04 #x60
- #x9C #x8E #x8F #x14 #x1F #x96 #xB9 #xA3
- #xFF)
- (:graphics
- #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
- #xFF)
- (:attribute
- #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
- #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
- #x0C #x00 #x0F #x08 #x00)))
+ '((:misc . #x67)
+ (:sequencer
+ #x03 #x08 #x03 #x00 #x02)
+ (:crtc
+ #x2D #x27 #x28 #x90 #x2B #xA0 #xBF #x1F
+ #x00 #x47 #x06 #x07 #x00 #x00 #x04 #x60
+ #x9C #x8E #x8F #x14 #x1F #x96 #xB9 #xA3
+ #xFF)
+ (:graphics
+ #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
+ #xFF)
+ (:attribute
+ #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
+ #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
+ #x0C #x00 #x0F #x08 #x00)))
(defconstant +vga-state-90x30+
- '((:misc . #xE7)
- (:sequencer
- #x03 #x01 #x03 #x00 #x02)
- (:crtc
- #x6B #x59 #x5A #x82 #x60 #x8D #x0B #x3E
- #x00 #x4F #x0D #x0E #x00 #x00 #x00 #x00
- #xEA #x0C #xDF #x2D #x10 #xE8 #x05 #xA3
- #xFF)
- (:graphics
- #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
- #xFF)
- (:attribute
- #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
- #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
- #x0C #x00 #x0F #x08 #x00)))
+ '((:misc . #xE7)
+ (:sequencer
+ #x03 #x01 #x03 #x00 #x02)
+ (:crtc
+ #x6B #x59 #x5A #x82 #x60 #x8D #x0B #x3E
+ #x00 #x4F #x0D #x0E #x00 #x00 #x00 #x00
+ #xEA #x0C #xDF #x2D #x10 #xE8 #x05 #xA3
+ #xFF)
+ (:graphics
+ #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
+ #xFF)
+ (:attribute
+ #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
+ #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
+ #x0C #x00 #x0F #x08 #x00)))
(defconstant +vga-state-90x60+
- '((:misc . #xE7)
- (:sequencer
- #x03 #x01 #x03 #x00 #x02)
- (:crtc
- #x6B #x59 #x5A #x82 #x60 #x8D #x0B #x3E
- #x00 #x47 #x06 #x07 #x00 #x00 #x00 #x00
- #xEA #x0C #xDF #x2D #x08 #xE8 #x05 #xA3
- #xFF)
- (:graphics
- #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
- #xFF)
- (:attribute
- #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
- #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
- #x0C #x00 #x0F #x08 #x00)))
+ '((:misc . #xE7)
+ (:sequencer
+ #x03 #x01 #x03 #x00 #x02)
+ (:crtc
+ #x6B #x59 #x5A #x82 #x60 #x8D #x0B #x3E
+ #x00 #x47 #x06 #x07 #x00 #x00 #x00 #x00
+ #xEA #x0C #xDF #x2D #x08 #xE8 #x05 #xA3
+ #xFF)
+ (:graphics
+ #x00 #x00 #x00 #x00 #x00 #x10 #x0E #x00
+ #xFF)
+ (:attribute
+ #x00 #x01 #x02 #x03 #x04 #x05 #x14 #x07
+ #x38 #x39 #x3A #x3B #x3C #x3D #x3E #x3F
+ #x0C #x00 #x0F #x08 #x00)))
(defconstant +vga-state-320x200x256-modex+
- '((:misc . #x63)
- (:sequencer
- #x03 #x01 #x0F #x00 #x06)
- (:crtc
- #x5F #x4F #x50 #x82 #x54 #x80 #xBF #x1F
- #x00 #x41 #x00 #x00 #x00 #x00 #x00 #x00
- #x9C #x0E #x8F #x28 #x00 #x96 #xB9 #xE3
- #xFF)
- (:graphics
- #x00 #x00 #x00 #x00 #x00 #x40 #x05 #x0F
- #xFF)
- (:attribute
- #x00 #x01 #x02 #x03 #x04 #x05 #x06 #x07
- #x08 #x09 #x0A #x0B #x0C #x0D #x0E #x0F
- #x41 #x00 #x0F #x00 #x00)))
+ '((:misc . #x63)
+ (:sequencer
+ #x03 #x01 #x0F #x00 #x06)
+ (:crtc
+ #x5F #x4F #x50 #x82 #x54 #x80 #xBF #x1F
+ #x00 #x41 #x00 #x00 #x00 #x00 #x00 #x00
+ #x9C #x0E #x8F #x28 #x00 #x96 #xB9 #xE3
+ #xFF)
+ (:graphics
+ #x00 #x00 #x00 #x00 #x00 #x40 #x05 #x0F
+ #xFF)
+ (:attribute
+ #x00 #x01 #x02 #x03 #x04 #x05 #x06 #x07
+ #x08 #x09 #x0A #x0B #x0C #x0D #x0E #x0F
+ #x41 #x00 #x0F #x00 #x00)))
;; intended future wrapper for graphics modes
(defconstant +graphical-mode-modex+
- '(+vga-state-320x200x256-modex+ ; vga state
- 320 ; width
- 200 ; height
- 3)) ; page count
+ '(+vga-state-320x200x256-modex+ ; vga state
+ 320 ; width
+ 200 ; height
+ 3)) ; page count
(defvar *vga-current-page* 0)
@@ -294,40 +294,40 @@
(assert set () "VGA state is missing ~A." register-set)
(cdr set))))
(unwind-protect
- (handler-bind ((serious-condition #'vga-reset))
- ;; write MISCELLANEOUS reg
- (setf (vga-port +vga-misc-write+)
- (assert-register-set state :misc))
- ;; write SEQUENCER regs
- (loop for x in (assert-register-set state :sequencer)
- as i upfrom 0
- do (setf (vga-sequencer-register i) x))
- (loop
- ;; unlock CRTC registers
- initially (setf (vga-crt-controller-register 3)
- (logior #x80 (vga-crt-controller-register 3)))
- (setf (vga-crt-controller-register #x11)
- (logand #x7f (vga-crt-controller-register #x11)))
- for x in (assert-register-set state :crtc)
- as i upfrom 0
- do (setf (vga-crt-controller-register i)
- (case i
- ;; make sure they remain unlocked
- (#x03 (logior #x80 x))
- (#x11 (logand #x7f x))
- (t x))))
- ;; write GRAPHICS CONTROLLER regs
- (loop for x in (assert-register-set state :graphics)
- as i upfrom 0
- do (setf (vga-graphics-register i) x))
- ;; write ATTRIBUTE CONTROLLER regs
- (loop for x in (assert-register-set state :attribute)
- as i upfrom 0
- do (setf (vga-attribute-register i) x))
- ;; lock 16-color palette and unblank display
- (io-port VGA-INSTAT-READ :unsigned-byte8)
- (setf (io-port VGA-AC-INDEX :unsigned-byte8) #x20)
- (setf old-state nil))
+ (handler-bind ((serious-condition #'vga-reset))
+ ;; write MISCELLANEOUS reg
+ (setf (vga-port +vga-misc-write+)
+ (assert-register-set state :misc))
+ ;; write SEQUENCER regs
+ (loop for x in (assert-register-set state :sequencer)
+ as i upfrom 0
+ do (setf (vga-sequencer-register i) x))
+ (loop
+ ;; unlock CRTC registers
+ initially (setf (vga-crt-controller-register 3)
+ (logior #x80 (vga-crt-controller-register 3)))
+ (setf (vga-crt-controller-register #x11)
+ (logand #x7f (vga-crt-controller-register #x11)))
+ for x in (assert-register-set state :crtc)
+ as i upfrom 0
+ do (setf (vga-crt-controller-register i)
+ (case i
+ ;; make sure they remain unlocked
+ (#x03 (logior #x80 x))
+ (#x11 (logand #x7f x))
+ (t x))))
+ ;; write GRAPHICS CONTROLLER regs
+ (loop for x in (assert-register-set state :graphics)
+ as i upfrom 0
+ do (setf (vga-graphics-register i) x))
+ ;; write ATTRIBUTE CONTROLLER regs
+ (loop for x in (assert-register-set state :attribute)
+ as i upfrom 0
+ do (setf (vga-attribute-register i) x))
+ ;; lock 16-color palette and unblank display
+ (io-port VGA-INSTAT-READ :unsigned-byte8)
+ (setf (io-port VGA-AC-INDEX :unsigned-byte8) #x20)
+ (setf old-state nil))
(vga-reset))))
state)
@@ -411,647 +411,647 @@
(defconstant +vga-font-8x8+
- #{#x00 #x00 #x00 #x00 #x00 #x00 #x00 #x00
- #x7E #x81 #xA5 #x81 #xBD #x99 #x81 #x7E
- #x7E #xFF #xDB #xFF #xC3 #xE7 #xFF #x7E
- #x6C #xFE #xFE #xFE #x7C #x38 #x10 #x00
- #x10 #x38 #x7C #xFE #x7C #x38 #x10 #x00
- #x38 #x7C #x38 #xFE #xFE #x92 #x10 #x7C
- #x00 #x10 #x38 #x7C #xFE #x7C #x38 #x7C
- #x00 #x00 #x18 #x3C #x3C #x18 #x00 #x00
- #xFF #xFF #xE7 #xC3 #xC3 #xE7 #xFF #xFF
- #x00 #x3C #x66 #x42 #x42 #x66 #x3C #x00
- #xFF #xC3 #x99 #xBD #xBD #x99 #xC3 #xFF
- #x0F #x07 #x0F #x7D #xCC #xCC #xCC #x78
- #x3C #x66 #x66 #x66 #x3C #x18 #x7E #x18
- #x3F #x33 #x3F #x30 #x30 #x70 #xF0 #xE0
- #x7F #x63 #x7F #x63 #x63 #x67 #xE6 #xC0
- #x99 #x5A #x3C #xE7 #xE7 #x3C #x5A #x99
- #x80 #xE0 #xF8 #xFE #xF8 #xE0 #x80 #x00
- #x02 #x0E #x3E #xFE #x3E #x0E #x02 #x00
- #x18 #x3C #x7E #x18 #x18 #x7E #x3C #x18
- #x66 #x66 #x66 #x66 #x66 #x00 #x66 #x00
- #x7F #xDB #xDB #x7B #x1B #x1B #x1B #x00
- #x3E #x63 #x38 #x6C #x6C #x38 #x86 #xFC
- #x00 #x00 #x00 #x00 #x7E #x7E #x7E #x00
- #x18 #x3C #x7E #x18 #x7E #x3C #x18 #xFF
- #x18 #x3C #x7E #x18 #x18 #x18 #x18 #x00
- #x18 #x18 #x18 #x18 #x7E #x3C #x18 #x00
- #x00 #x18 #x0C #xFE #x0C #x18 #x00 #x00
- #x00 #x30 #x60 #xFE #x60 #x30 #x00 #x00
- #x00 #x00 #xC0 #xC0 #xC0 #xFE #x00 #x00
- #x00 #x24 #x66 #xFF #x66 #x24 #x00 #x00
- #x00 #x18 #x3C #x7E #xFF #xFF #x00 #x00
- #x00 #xFF #xFF #x7E #x3C #x18 #x00 #x00
- #x00 #x00 #x00 #x00 #x00 #x00 #x00 #x00
- #x18 #x3C #x3C #x18 #x18 #x00 #x18 #x00
- #x6C #x6C #x6C #x00 #x00 #x00 #x00 #x00
- #x6C #x6C #xFE #x6C #xFE #x6C #x6C #x00
- #x18 #x7E #xC0 #x7C #x06 #xFC #x18 #x00
- #x00 #xC6 #xCC #x18 #x30 #x66 #xC6 #x00
- #x38 #x6C #x38 #x76 #xDC #xCC #x76 #x00
- #x30 #x30 #x60 #x00 #x00 #x00 #x00 #x00
- #x18 #x30 #x60 #x60 #x60 #x30 #x18 #x00
- #x60 #x30 #x18 #x18 #x18 #x30 #x60 #x00
- #x00 #x66 #x3C #xFF #x3C #x66 #x00 #x00
- #x00 #x18 #x18 #x7E #x18 #x18 #x00 #x00
- #x00 #x00 #x00 #x00 #x00 #x18 #x18 #x30
- #x00 #x00 #x00 #x7E #x00 #x00 #x00 #x00
- #x00 #x00 #x00 #x00 #x00 #x18 #x18 #x00
- #x06 #x0C #x18 #x30 #x60 #xC0 #x80 #x00
- #x7C #xCE #xDE #xF6 #xE6 #xC6 #x7C #x00
- #x30 #x70 #x30 #x30 #x30 #x30 #xFC #x00
- #x78 #xCC #x0C #x38 #x60 #xCC #xFC #x00
- #x78 #xCC #x0C #x38 #x0C #xCC #x78 #x00
- #x1C #x3C #x6C #xCC #xFE #x0C #x1E #x00
- #xFC #xC0 #xF8 #x0C #x0C #xCC #x78 #x00
- #x38 #x60 #xC0 #xF8 #xCC #xCC #x78 #x00
- #xFC #xCC #x0C #x18 #x30 #x30 #x30 #x00
- #x78 #xCC #xCC #x78 #xCC #xCC #x78 #x00
- #x78 #xCC #xCC #x7C #x0C #x18 #x70 #x00
- #x00 #x18 #x18 #x00 #x00 #x18 #x18 #x00
- #x00 #x18 #x18 #x00 #x00 #x18 #x18 #x30
- #x18 #x30 #x60 #xC0 #x60 #x30 #x18 #x00
- #x00 #x00 #x7E #x00 #x7E #x00 #x00 #x00
- #x60 #x30 #x18 #x0C #x18 #x30 #x60 #x00
- #x3C #x66 #x0C #x18 #x18 #x00 #x18 #x00
- #x7C #xC6 #xDE #xDE #xDC #xC0 #x7C #x00
- #x30 #x78 #xCC #xCC #xFC #xCC #xCC #x00
- #xFC #x66 #x66 #x7C #x66 #x66 #xFC #x00
- #x3C #x66 #xC0 #xC0 #xC0 #x66 #x3C #x00
- #xF8 #x6C #x66 #x66 #x66 #x6C #xF8 #x00
[1230 lines skipped]
More information about the Movitz-cvs
mailing list