🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.atari.st
Article #32031

Re: TRAP handler question (ST hardware scrolling)

#32031
From: unpowell
Date: Tue, 19 Apr 1988 17:57
35 lines
2212 bytes

	I've never seen or heard of this program Tempus, but one way I know
of to considerably speed up character output and one that may be used in
this program is to "hardware scroll" the screen.
	A factor I'd like to draw your attention to is that in all three screen
resolutions a row of characters occupies $500 or 1280 bytes of memory. Say
the screen is at location $70000.
	The physical screen position should first be put to $70000. All
character rows are printed normally until it comes time to scroll. Instead
of moving 32000-1280=30720 bytes to scroll the screen we instead add $500
to the physical screen position, thus displaying the area of memory one
character line further forward in memory i.e. $70500.
	Snag. We will eventually run out of memory if we keep moving the
screen onwards though memory. So we reserve an area approximately twice
the size of the standard screen, 64000 bytes say. When we are displaying
the last 32000 bytes of this block we then copy rows 1 to 24 (remember
row 0 is the top one) to the start of this extended screen area and then
display the first 32000 bytes of this area as the screen.
	Reserving 64000 bytes (enough for 50 character rows) will involve
moving 32000 bytes of memory every 25 scrolls. The standard BIOS routine
has to move (32000-1280)*25=768000 bytes every 25 scrolls. Quite a saving
in time for just an extra 32K screen memory.
	Using this method speeds up screen output fantastically.

	Mark Powell

********************************************************************************

 "...there's no success   JANET unpowell@uk.ac.liv.csvax
  like failure and        UUCP  {backbone}!mcvax!ukc!mupsy!liv-cs!unpowell
  failure's no success    ARPA  unpowell%csvax.liv.ac.uk@nss.cs.ucl.ac.uk
  at all..." B.Dylan

********************************************************************************
Technical Details
Message-ID: <544@csvax.liv.ac.uk>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!mcvax!ukc!mupsy!liv-cs!unpowell

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!mcvax!ukc!mupsy!liv-cs!unpowell
From: unpowell@csvax.liv.ac.uk
Newsgroups: comp.sys.atari.st
Subject: Re: TRAP handler question (ST hardware scrolling)
Message-ID: <544@csvax.liv.ac.uk>
Date: 19 Apr 88 17:57:30 GMT
Lines: 34
Organisation: Computer Science CSVAX (VAX1), Liverpool University