[comp.sys.dec.micro] Memory Location for Text Screen

dj@homxc.UUCP (Dave Jenkins) (10/19/88)

I need to know how to access the Dec Rainbow's
screen from machine language.  My machine is
the "A" version I think (cannot boot from
hard disk).  Questions are:

Is screen memory mapped?  What are addresses?

Can you send me a sample routine to transfer a
section of memory to the screen using the
8086 processor? 

If screen is not memory mapped, how do I send 
a character to the screen?  Do you know a 
CPM call?  

Thank you. Please send replies to:

                Jay Gabin
                201-615-5359
                att!homxc!gabin 


-- 
-------------------------------------------------------
--  Dave Jenkins:  {att}!homxc!dj or (201)-615-5371  --
-------------------------------------------------------

jms@antares.UUCP (joe smith) (10/20/88)

In article <3847@homxc.UUCP> dj@homxc.UUCP (Dave Jenkins) writes:
>I need to know how to access the Dec Rainbow's screen from machine language.
>Is screen memory mapped?  What are addresses?

Each line is stored at a different location in memory - all 24.5 lines are
stored as a linked list.  If you have ever seen the limited scrolling region
in use you'd understand why the lines cannot be stored in consecutive
locations in memory.  This is why fixed locations in RAM cannot be used
(unlike the IBM PC). 

The usual way to address the screen is via escape sequences.  For instance,
ESCape "[" "2" "4" ";" "8" "0" "H" "*" will put an asterisk in the lower
right hand corner (line 24, column 80).

There is a "fast-video" BIOS call for updating the screen quickly.
One place you can find a working example of this sort of code is in the
sources to the Rainbow version of MS-DOS KERMIT.  I think I might have
the CP/M and MS-DOS Tech Docs at work somewhere.
-- 
+----------------------------------------------------------------------------+
| TYMNET:JMS@F29  CA:"POPJ P,"  UUCP:{ames|pyramid}oliveb!tymix!antares!jms  |
| INTERNET: (Office-1.ARPA is no more)      PHONE:Joe Smith @ (408)922-6220  |
+----------------------------------------------------------------------------+