;;;-*- Mode: LISP; Package: COLOR; Base: 10.; Lowercase: Yes -*- #|| ;;;> ;;;> ***************************************************************************************** ;;;> ** (c) Copyright 1993-1990 Symbolics, Inc. All rights reserved. ;;;> ** Portions of font library Copyright (c) 1984 Bitstream, Inc. All Rights Reserved. ;;;> ;;;> The software, data, and information contained herein are proprietary ;;;> to, and comprise valuable trade secrets of, Symbolics, Inc., which intends ;;;> to keep such software, data, and information confidential and to preserve ;;;> them as trade secrets. They are given in confidence by Symbolics pursuant ;;;> to a written license agreement, and may be used, copied, transmitted, and ;;;> stored only in accordance with the terms of such license. ;;;> ;;;> Symbolics, Symbolics 3600, Symbolics 3670 (R), Symbolics 3675 (R), Symbolics ;;;> 3630, Symbolics 3640, Symbolics 3645 (R), Symbolics 3650 (R), Symbolics 3653, ;;;> Symbolics 3620 (R), Symbolics 3610 (R), Symbolics Common Lisp (R), ;;;> Symbolics-Lisp (R), Zetalisp (R), Genera (R), Wheels (R), Dynamic Windows (R), ;;;> SmartStore (R), Semanticue (R), Frame-Up (R), Firewall (R), Document Examiner (R), ;;;> Delivery Document Examiner, "Your Next Step in Computing" (R), Ivory, MacIvory, ;;;> MacIvory model 1, MacIvory model 2, MacIvory model 3, XL400, XL1200, XL1201, ;;;> Symbolics UX400S, Symbolics UX1200S, NXP1000, Symbolics C, Symbolics Pascal (R), ;;;> Symbolics Prolog, Symbolics Fortran (R), CLOE (R), CLOE Application Generator, ;;;> CLOE Developer, CLOE Runtime, Common Lisp Developer, Symbolics Concordia, Joshua, ;;;> Statice (R), and Minima are trademarks of Symbolics, Inc. ;;;> ;;;> RESTRICTED RIGHTS LEGEND ;;;> Use, duplication, and disclosure by the Government are subject to restrictions ;;;> as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data and Computer ;;;> Software Clause at DFAR 52.227-7013. ;;;> ;;;> Symbolics, Inc. ;;;> 6 Concord Farms ;;;> 555 Virginia Road ;;;> Concord, Massachusetts 01742-2727 ;;;> United States of America ;;;> 508-287-1000 ;;;> ;;;> ***************************************************************************************** ;;;> ||# ;; ;; Nuvista+ support ;; (defflavor nuvista+mixin () (nuvista-mixin common-nuvista-mixin tv:nubus-color-graphics-mixin) (:gettable-instance-variables) (:default-init-plist :adjust-mouse-offsets t) ) (defmethod (sync-program-types nuvista+mixin) () ;list of symbols valid as sync program named structure symbols. ;used to identify appropriate sync programs ;the sync program slot must contain one of these. '(:nuvista+)) (defflavor nuvista+screen () (managed-map-mixin nuvista+mixin pan-zoom-methods-mixin simple-color-map-mixin common-color-hardware-mixin common-control-mixin simulate-bow-mode-mixin screen-stuff-mixin) ) (defprop :nuvista+ nuvista+screen :default-screen-flavor) (defconst *nuvista+sync-programs* '(:ntsc tv:nuvista+ntsc :ntsc-601 tv:nuvista+601-ntsc :ntsc-601-10pt7 tv:nuvista+601-10pt7-ntsc :ntsc-10pt8 tv:nuvista+10pt8-ntsc :pal tv:nuvista+pal-wide :narrow-pal tv:nuvista+pal :pal-601-12us tv:nuvista+pal-601-12us :pal-601 tv:nuvista+pal-601 :hires tv:nuvista+apple-sync )) ;; ;; Tweaking these numbers; ;; Within small ranges; CLKRATE corresponds to the size of blanking, ;; smaller clkrate makes smaller blanking ;; Difference between HEBLNK and HSBLNK corresponds to total blanking ;; Smaller HEBLNK makes larger front porch ;; (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? T NUMBER-OF-LINES 484 PIXELS-PER-LINE 640 PIXEL-WIDTH 3 PIXEL-ASPECT-RATIO 1.0 CLKRATE 386 GENLOCK #O30004 HRATE 858 HSWIDTH 29 VRATE 525 VSWIDTH 6 HEBLNK 48 HSBLNK 368 ; was 370 ; was 352 VEBLNK 13 ; was 14 ; was 17 VSBLNK 259 ;was 257 NAME "NTSC June 30 1989" VESYNC #X7F HESYNC #X7F COMPLEMENTARY-INTERLACE 'tv:nuvista-apple-sync ) tv:nuvista+10pt8-NTSC) (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? T NUMBER-OF-LINES 484 PIXELS-PER-LINE 640 PIXEL-WIDTH 3 PIXEL-ASPECT-RATIO 1.0 CLKRATE 388 GENLOCK #O30004 HRATE 858 HSWIDTH 29 VRATE 525 VSWIDTH 6 HEBLNK 50 HSBLNK 370 ; was 370 ; was 352 VEBLNK 13 ; was 14 ; was 17 VSBLNK 259 ;was 257 NAME "NTSC June 30 1989" VESYNC #X7F HESYNC #X7F COMPLEMENTARY-INTERLACE 'tv:nuvista+apple-sync ) tv:nuvista+NTSC) (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? T NUMBER-OF-LINES 484 PIXELS-PER-LINE 720. PIXEL-WIDTH 3 PIXEL-ASPECT-RATIO (// 640.0 720.0) CLKRATE 436 GENLOCK #O30004 HRATE 858 HSWIDTH 32 VRATE 525 VSWIDTH 6 HEBLNK 56 HSBLNK 416 VEBLNK 13 VSBLNK 259 NAME "NTSC 601 June 30 1989" VESYNC #X7F HESYNC #X7F ) tv:nuvista+601-NTSC) (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? T NUMBER-OF-LINES 484 PIXELS-PER-LINE 720. PIXEL-WIDTH 3 PIXEL-ASPECT-RATIO (// 640.0 720.0) CLKRATE 433 GENLOCK #O30004 HRATE 858 HSWIDTH 32 VRATE 525 VSWIDTH 6 HEBLNK 54 HSBLNK 414 ; was 370 ; was 352 VEBLNK 13 ; was 14 ; was 17 VSBLNK 259 ;was 257 NAME "NTSC 601 10.7 usec blanking June 30 1989" VESYNC #X7F HESYNC #X7F ) tv:nuvista+601-10pt7-NTSC) ; (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? T NUMBER-OF-LINES 574 PIXELS-PER-LINE 640. PIXEL-WIDTH 3 PIXEL-ASPECT-RATIO (// 760.0 640.0) CLKRATE 394 ;395 GENLOCK #O30004 HRATE 858 HSWIDTH 30 VRATE 625 VSWIDTH 6 HEBLNK 57 HSBLNK 377 ; was 370 ; was 352 VEBLNK 15 ; was 14 ; was 17 VSBLNK 304 ;was 257 NAME "NTSC from hardware" VESYNC #X7F HESYNC #X7F ) tv:nuvista+pal) (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? T NUMBER-OF-LINES 574 PIXELS-PER-LINE 720. PIXEL-WIDTH 3 PIXEL-ASPECT-RATIO (// 760.0 720.0) CLKRATE 443 ;395 GENLOCK #O30004 HRATE 858 HSWIDTH 32 VRATE 625 VSWIDTH 6 HEBLNK 65 HSBLNK 425 VEBLNK 15 VSBLNK 304 NAME "pal 601 with 12us blanking" VESYNC #X7F HESYNC #X7F ) tv:nuvista+pal-601-12us) (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? T NUMBER-OF-LINES 574 PIXELS-PER-LINE 864 PIXEL-WIDTH 2 PIXEL-ASPECT-RATIO (// 760.0 864.0) CLKRATE 399 GENLOCK #O30004 HRATE 858 HSWIDTH 29 VRATE 625 VSWIDTH 6 HEBLNK 58 HSBLNK 382 VEBLNK 15 VSBLNK 304 NAME "pal 601 with 12us blanking" VESYNC #X7F HESYNC #X7F ) tv:nuvista+pal-wide) (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? T NUMBER-OF-LINES 574 PIXELS-PER-LINE 720. PIXEL-WIDTH 3 PIXEL-ASPECT-RATIO (// 760.0 720.0) CLKRATE 432 ;395 GENLOCK #O30004 HRATE 858 HSWIDTH 32 VRATE 625 VSWIDTH 6 HEBLNK 54 HSBLNK 414 VEBLNK 15 VSBLNK 304 NAME "pal 601 with 10.7us blanking" VESYNC #X7F HESYNC #X7F ) tv:nuvista+pal-601) (defprop sync-programs #,(make-nuvista-sync-format FP 0 HARDWARE-TYPE :NUVISTA+ INTERLACE? NIL NUMBER-OF-LINES 484 PIXELS-PER-LINE 640 PIXEL-WIDTH 1 PIXEL-ASPECT-RATIO 1.0 CLKRATE 216 GENLOCK 2049 HRATE 386 HSWIDTH 16 VRATE 1050 VSWIDTH 6 HEBLNK 34 HSBLNK 200 VEBLNK 31 VSBLNK 523 NAME "apple program from hardware" VESYNC 127 HESYNC 127 COMPLEMENTARY-INTERLACE 'tv:nuvista+ntsc) tv:nuvista+apple-sync) (defprop color-setups (:controller :nuvista+ :expose-p t :paddle-card nil) :NUVISTA+) (defprop color-setups (:controller :nuvista+ :byte-order :argb :expose-p t :paddle-card nil) :NUVISTA+red-blue-swapped) (compile-flavor-methods nuvista+screen)