g451252772ea@deneb.ucdavis.edu (0040;0000003376;0;327;142;) (10/18/87)
What follows is a msg I copied some time back... it seems to be Pascal source
to provide NTSC out. Of where, and how, is not obvious (but I haven't yet
looked, either... not a real high priority just now). If you find out, I'd
appreciate hearing the story. Hopefully helpfully,
Ron Goldthwaite, UC Davis, Psychology & Animal Behavior
Article 6307 of comp.sys.mac:
Relay-Version: version B 2.10.2 9/18/84; site ucdavis.UUCP
Path: ucdavis!ucbvax!decvax!decwrl!hplabs!hp-pcd!uoregon!omepd!intelisc!littlei!ogcvax!afoster
From: afoster@ogcvax.UUCP (Allan Foster)
Newsgroups: comp.sys.mac
Subject: Mac II NTSC Video source code
Message-ID: <1413@ogcvax.UUCP>
Date: 10 Sep 87 20:00:20 GMT
Date-Received: 12 Sep 87 01:28:34 GMT
Reply-To: afoster@ogcvax.UUCP (Allan Foster)
Organization: Oregon Graduate Center, Beaverton, OR
Lines: 83
Ok Folks,
Here is the source to change the MAC II into Ntsc video.
The Slot must be between 9 and 14 inclusive.
The procedures are written in Rascal from Reed College but
the format is reliatively similar to Pascal.
I am posting the news as I have received a lot of requests to do
this.
Procedure SetInterlace(Slot:Integer);
(* Set to NTSC Video *)
Var
CardPtr : ^Longint[15]; (* Pointer to array of longints *)
Dummy : Integer;
Calc : Longint ;
Begin
(* CardPtr := $100000L*Slot +$80000L; card = $00100000*slot +$80000 *)
CardPtr := Slot;
CardPtr := (CardPtr << 20) +$80000L; (* << is the shift left OP *)
CardPtr^[0] := $FF;
CardPtr^[1] := $48;
CardPtr^[2] := $ff;
CardPtr^[3] := $f7;
CardPtr^[4] := $9f;
CardPtr^[5] := $1a;
CardPtr^[6] := $c4;
CardPtr^[7] := $e6;
CardPtr^[8] := $fa;
CardPtr^[9] := $f7;
CardPtr^[10] := $e5;
CardPtr^[11] := $F1;
CardPtr^[12] := $7b;
CardPtr^[13] := $f1;
CardPtr^[14] := $d1;
CardPtr^[15] := $06;
CardPtr := Slot;
CardPtr := (Cardptr <<20) +$C0000 ;
Dummy := Cardptr^ ; (* Must be a Longint reference *)
End;
Procedure ClearInterlace(Slot:Integer);
(* Set To Mac Normal video *)
Var
CardPtr : ^Longint[15];
Dummy : Integer;
Begin
CardPtr := Slot;
CardPtr := (CardPtr <<20) +$80000L; (* card = $00100000*slot +$80000 *)
CardPtr^[0] := $FF;
CardPtr^[1] := $B8;
CardPtr^[2] := $ff;
CardPtr^[3] := $f7;
CardPtr^[4] := $0f;
CardPtr^[5] := $1a;
CardPtr^[6] := $88;
CardPtr^[7] := $b9;
CardPtr^[8] := $fa;
CardPtr^[9] := $e1;
CardPtr^[10] := $e1;
CardPtr^[11] := $e9;
CardPtr^[12] := $79;
CardPtr^[13] := $69;
CardPtr^[14] := $d2;
CardPtr^[15] := $02;
CardPtr := Slot;
CardPtr := (CardPtr <<20) +$B0000 ;
Dummy := Cardptr^ ;
End;