🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

More info on software color upgrade

#31189
From: Wayne Knapp
Date: Wed, 09 Mar 1988 23:27
74 lines
3412 bytes

I found out that I computed the movm timing incorrectly.  Now it looks like to
me that the fastest way to move memory to memory is the mov.l (An)+,(Am)+ 
instruction.  Does anyone know a faster way?  If not, using this instruction
will allow for 48 color changes a scan line.  I believe that is the same as
Spectrum 512.  Maybe they couldn't find a faster way either.  Anyway the code
would look like:

    Some in beginning:

        mov.l color.information.table,A0      # picture color information
        mov.l start.color.registers,A1        # ST's color registers
        mov.q 199,D0                          # 199 lines

        sync code                             # posted earlier
        Maybe some code for changing top line colors 16 times   32 colors
   
    newline: mov.l A1,A2       #  4 
             mov.l A1,A3       #  4    8 
             mov.l A1,A4       #  4   12
             clr.l D1          #  6   18    need to waste 6 cycles

             mov.l (A0)+,(A2)+ # 20   38
             mov.l (A0)+,(A2)+ # 20   58 
             mov.l (A0)+,(A2)+ # 20   78
             mov.l (A0)+,(A2)+ # 20   98 
             mov.l (A0)+,(A2)+ # 20  118 
             mov.l (A0)+,(A2)+ # 20  138 
             mov.l (A0)+,(A2)+ # 20  158 
             mov.l (A0)+,(A2)+ # 20  178 

             mov.l (A0)+,(A3)+ # 20  198 
             mov.l (A0)+,(A3)+ # 20  218 
             mov.l (A0)+,(A3)+ # 20  238 
             mov.l (A0)+,(A3)+ # 20  258 
             mov.l (A0)+,(A3)+ # 20  278 
             mov.l (A0)+,(A3)+ # 20  298 
             mov.l (A0)+,(A3)+ # 20  318 
             mov.l (A0)+,(A3)+ # 20  338 

             mov.l (A0)+,(A4)+ # 20  358 
             mov.l (A0)+,(A4)+ # 20  378 
             mov.l (A0)+,(A4)+ # 20  398 
             mov.l (A0)+,(A4)+ # 20  418 
             mov.l (A0)+,(A4)+ # 20  438 
             mov.l (A0)+,(A4)+ # 20  458 
             mov.l (A0)+,(A4)+ # 20  478 
             mov.l (A0)+,(A4)+ # 20  498 
             dbne  D0,newline  # 10  508  remember 508 cycles per scan line 

This would give 14 colors per 20 pixels with two new colors every 20 pixels.
I can't think of anything better, but I still open to new ideas.

Another interesting mode any be to use word moves and make a new high res mode.
it not allow as many color changes since one runs out of address registers, but
it may be nice.  The inner loop could be made of the following segments.

             mov.w (A0)+,(A2)+  # 13  13
             mov.w (A0)+,(A2)+  # 13  26
             mov.w (A0)+,(A2)+  # 13  39
             mov.w (A0)+,(A2)+  # 13  42
             mov.l A1,A2        #  4  46

This would allow for 32 colors per scan line.  Only 32 since only part of the
188 cycles during horizontal retrace could be use.  Does anyone want this mode,
640 x 200 x 512 colors?

What is a good name for these, any ideas?

                          Thank you,
                             Wayne Knapp

     
Technical Details
Message-ID: <2508@tekig5.TEK.COM>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!cmcl2!nrl-cmf!ames!eos!aurora!labrea!decwrl!decvax!tektronix!tekig!tekig5!wayneck

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!husc6!cmcl2!nrl-cmf!ames!eos!aurora!labrea!decwrl!decvax!tektronix!tekig!tekig5!wayneck
From: wayneck@tekig5.TEK.COM (Wayne Knapp)
Newsgroups: comp.sys.atari.st
Subject: More info on software color upgrade
Message-ID: <2508@tekig5.TEK.COM>
Date: 9 Mar 88 23:27:44 GMT
Organization: Tektronix Inc., Beaverton, Or.
Lines: 74
Keywords: public domain great graphics