TIP: Click on subject to list as thread! ANSI
echo: cis.os9.68000.osk
to: Bob van der Poel 76510,2203 (X)
from: Eric Crichlow 71051,3516
date: 1994-01-18 04:33:15
subject: #19614-#CDI Computer News

#: 19621 S12/OS9/68000 (OSK)
    18-Jan-94  04:33:15
Sb: #19614-#CDI Computer News
Fm: Eric Crichlow 71051,3516
To: Bob van der Poel 76510,2203 (X)

Bob,

  > ... but in most cases you can achive better speedup results by improving
  > algorithms...

    That is true in most cases, but in this one, the vital code segment is so
small I don't know what kind of optimizing I can do. See for yourself:

Display_Screen (rtop, sy, x) register int rtop, x;      /* Don't know if using
"reg" makes a difference  */ char *sy;                          /* Where sy
points to the start of screen memory */ {

   register int y;

   for (y=0;y There are no assembler block move commands for the 68xxx.

    What I meant there was that, instead of whatever assembly call memcpy()
uses, I thought that the greatest speed could be achieved by using, (please
excuse my ignorance here, as I've never written a line of assembly code in my
life,):

            move.l (a0)+,(a1)   /* Address Register Indirect Addressing with
                                   Post-Increment using longword operands */

This may make no sense, but, not knowing assembly, it makes perfect sense to
me! :)

    It is my understanding, however, that memcpy() uses "move.b", which moves
data a byte at a time, and is, theoretically, only 1/4 as fast as the method I
want to use. How wrong am I here?

    Thanks for any help or enlightenment you can provide.

..Eric...

There is 1 Reply.

SOURCE: compuserve via textfiles.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.