Mercurial > sdl-ios-xcode
annotate src/video/ataricommon/SDL_ataric2p.S @ 1133:609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
To: SDL Developers <sdl@libsdl.org>
From: =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb@algonet.se>
Date: Mon, 30 May 2005 23:29:04 +0200
Subject: [SDL] Mac OS X Video Drivers [patch]
I've updated/added the Carbon and X11 video drivers
to the Mac OS X port of SDL 1.2 (the CVS version),
and made the Cocoa driver and runtime *optional*.
The default is still Cocoa, and the "Quartz" driver.
But you can now also use "toolbox" for Carbon, and
"x11" for running with Apple's (or other) X11 server:
export SDL_VIDEODRIVER=x11
export SDL_VIDEO_GL_DRIVER=/usr/X11R6/lib/libGL.dylib
It also checks if the frameworks are available, by a:
#include <Carbon/Carbon.h> or #import <Cocoa/Cocoa.h>
(this should make it configure on plain Darwin as well?)
Here are the new configure targets:
--enable-video-cocoa use Cocoa/Quartz video driver default=yes
--enable-video-carbon use Carbon/QuickDraw video driver default=yes
--enable-video-x11 use X11 video driver default=no
./configure --enable-video-cocoa --enable-video-carbon
--enable-video-x11 \
--x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib
The Carbon version is just an updated version of the old
SDL driver for Mac OS 9, and could probably be improved...
(but it does work, including the Carbon version of SDLmain)
If you disable cocoa, you can run with -framework Carbon only,
and the C version of SDL_main.c. And if you disable carbon too,
you can still use the X11 version which doesn't require SDLmain.
I updated the DrawSprocket version, but did not include it.
(no blitters or VRAM GWorlds etc. available on OS X anyway)
Besides for Mac OS 9, I don't think there's any use for it ?
And note that any performance on Mac OS X equals OpenGL anyway...
You can get "fair" software SDL results on captured CG displays,
but for decent frame rates you need to be using GL for rendering.
Finally, here is the patch itself:
http://www.algonet.se/~afb/SDL-12CVS-macvideo.patch
--anders
PS. It says "video", but as usual it applies to mouse/keyboard too.
------
To: A list for developers using the SDL library <sdl@libsdl.org>
From: =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb@algonet.se>
Date: Sun, 4 Sep 2005 10:02:15 +0200
Subject: [SDL] Updated Mac patch
Updated the previous Mac patch to disable Carbon by default.
Also "fixed" the SDL.spec again, so that it builds on Darwin.
http://www.algonet.se/~afb/SDL-1.2.9-mac.patch
Also applied fine to SDL12 CVS, when I tried it.
author | Ryan C. Gordon <icculus@icculus.org> |
---|---|
date | Thu, 08 Sep 2005 06:16:14 +0000 |
parents | 93207759e065 |
children | c9b51268668f |
rev | line source |
---|---|
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
1 /* |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
2 SDL - Simple DirectMedia Layer |
297
f6ffac90895c
Updated copyright information for 2002
Sam Lantinga <slouken@libsdl.org>
parents:
281
diff
changeset
|
3 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 Sam Lantinga |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
4 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
5 This library is free software; you can redistribute it and/or |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
6 modify it under the terms of the GNU Library General Public |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
7 License as published by the Free Software Foundation; either |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
8 version 2 of the License, or (at your option) any later version. |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
9 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
10 This library is distributed in the hope that it will be useful, |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
11 but WITHOUT ANY WARRANTY; without even the implied warranty of |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
13 Library General Public License for more details. |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
14 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
15 You should have received a copy of the GNU Library General Public |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
16 License along with this library; if not, write to the Free |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
18 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
19 Sam Lantinga |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
20 slouken@libsdl.org |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
21 */ |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
22 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
23 #ifdef SAVE_RCSID |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
24 static char rcsid = |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
25 "@(#) $Id$"; |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
26 #endif |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
27 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
28 /* |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
29 Chunky to planar conversion routine |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
30 1 byte/pixel -> 4 or 8 bit planes |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
31 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
32 Patrice Mandin |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
33 Xavier Joubert |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
34 Mikael Kalms |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
35 */ |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
36 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
37 .globl _SDL_Atari_C2pConvert |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
38 .globl _SDL_Atari_C2pConvert8 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
39 .globl _SDL_Atari_C2pConvert4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
40 .globl _SDL_Atari_C2pConvert4_pal |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
41 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
42 /* ------------ Conversion C2P, 8 bits ------------ */ |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
43 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
44 .text |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
45 _SDL_Atari_C2pConvert8: |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
46 movel sp@(4),c2p_source |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
47 movel sp@(8),c2p_dest |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
48 movel sp@(12),c2p_width |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
49 movel sp@(16),c2p_height |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
50 movel sp@(20),c2p_dblligne |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
51 movel sp@(24),c2p_srcpitch |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
52 movel sp@(28),c2p_dstpitch |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
53 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
54 moveml d2-d7/a2-a6,sp@- |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
55 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
56 movel c2p_source,c2p_cursrc |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
57 movel c2p_dest,c2p_curdst |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
58 movel #0x0f0f0f0f,d4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
59 movel #0x00ff00ff,d5 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
60 movel #0x55555555,d6 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
61 movew c2p_height+2,c2p_row |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
62 movew c2p_width+2,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
63 andw #-8,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
64 movew d0,c2p_rowlen |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
65 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
66 SDL_Atari_C2p8_rowloop: |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
67 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
68 movel c2p_cursrc,a0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
69 movel c2p_curdst,a1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
70 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
71 movel a0,a2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
72 addw c2p_rowlen,a2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
73 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
74 movel a0@+,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
75 movel a0@+,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
76 movel a0@+,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
77 movel a0@+,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
78 /* |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
79 d0 = a7a6a5a4a3a2a1a0 b7b6b5b4b3b2b1b0 c7c6c5c4c3c2c1c0 d7d6d5d4d3d2d1d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
80 d1 = e7e6e5e4e3e2e1e0 f7f6f5f4f3f2f1f0 g7g6g5g4g3g2g1g0 h7h6h5h4h3h2h1h0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
81 d2 = i7i6i5i4i3i2i1i0 j7j6j5j4j3j2j1j0 k7k6k5k4k3k2k1k0 l7l6l5l4l3l2l1l0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
82 d3 = m7m6m5m4m3m2m1m0 n7n6n5n4n3n2n1n0 o7o6o5o4o3o2o1o0 p7p6p5p4p3p2p1p0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
83 */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
84 movel d1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
85 lsrl #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
86 eorl d0,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
87 andl d4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
88 eorl d7,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
89 lsll #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
90 eorl d7,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
91 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
92 movel d3,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
93 lsrl #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
94 eorl d2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
95 andl d4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
96 eorl d7,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
97 lsll #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
98 eorl d7,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
99 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
100 movel d2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
101 lsrl #8,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
102 eorl d0,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
103 andl d5,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
104 eorl d7,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
105 lsll #8,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
106 eorl d7,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
107 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
108 movel d3,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
109 lsrl #8,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
110 eorl d1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
111 andl d5,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
112 eorl d7,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
113 lsll #8,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
114 eorl d7,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
115 /* |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
116 d0 = a7a6a5a4e7e6e5e4 i7i6i5i4m7m6m5m4 c7c6c5c4g7g6g5g4 k7k6k5k4o7o6o5o4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
117 d1 = a3a2a1a0e3e2e1e0 i3i2i1i0m3m2m1m0 c3c2c1c0g3g2g1g0 k3k2k1k0o3o2o1o0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
118 d2 = b7b6b5b4f7f6f5f4 j7j6j5j4n7n6n5n4 d7d6d5d4h7h6h5h4 l7l6l5l4p7p6p5p4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
119 d3 = b3b2b1b0f3f2f1f0 j3j2j1j0n3n2n1n0 d3d2d1d0h3h2h1h0 l3l2l1l0p3p2p1p0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
120 */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
121 bras SDL_Atari_C2p8_start |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
122 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
123 SDL_Atari_C2p8_pix16: |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
124 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
125 movel a0@+,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
126 movel a0@+,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
127 movel a0@+,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
128 movel a0@+,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
129 /* |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
130 d0 = a7a6a5a4a3a2a1a0 b7b6b5b4b3b2b1b0 c7c6c5c4c3c2c1c0 d7d6d5d4d3d2d1d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
131 d1 = e7e6e5e4e3e2e1e0 f7f6f5f4f3f2f1f0 g7g6g5g4g3g2g1g0 h7h6h5h4h3h2h1h0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
132 d2 = i7i6i5i4i3i2i1i0 j7j6j5j4j3j2j1j0 k7k6k5k4k3k2k1k0 l7l6l5l4l3l2l1l0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
133 d3 = m7m6m5m4m3m2m1m0 n7n6n5n4n3n2n1n0 o7o6o5o4o3o2o1o0 p7p6p5p4p3p2p1p0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
134 */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
135 movel d1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
136 lsrl #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
137 movel a3,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
138 eorl d0,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
139 andl d4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
140 eorl d7,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
141 lsll #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
142 eorl d7,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
143 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
144 movel d3,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
145 lsrl #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
146 eorl d2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
147 andl d4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
148 eorl d7,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
149 movel a4,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
150 lsll #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
151 eorl d7,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
152 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
153 movel d2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
154 lsrl #8,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
155 eorl d0,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
156 andl d5,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
157 eorl d7,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
158 movel a5,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
159 lsll #8,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
160 eorl d7,d2 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
161 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
162 movel d3,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
163 lsrl #8,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
164 eorl d1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
165 andl d5,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
166 eorl d7,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
167 movel a6,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
168 lsll #8,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
169 eorl d7,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
170 /* |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
171 d0 = a7a6a5a4e7e6e5e4 i7i6i5i4m7m6m5m4 c7c6c5c4g7g6g5g4 k7k6k5k4o7o6o5o4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
172 d1 = a3a2a1a0e3e2e1e0 i3i2i1i0m3m2m1m0 c3c2c1c0g3g2g1g0 k3k2k1k0o3o2o1o0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
173 d2 = b7b6b5b4f7f6f5f4 j7j6j5j4n7n6n5n4 d7d6d5d4h7h6h5h4 l7l6l5l4p7p6p5p4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
174 d3 = b3b2b1b0f3f2f1f0 j3j2j1j0n3n2n1n0 d3d2d1d0h3h2h1h0 l3l2l1l0p3p2p1p0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
175 */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
176 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
177 SDL_Atari_C2p8_start: |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
178 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
179 movel d2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
180 lsrl #1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
181 eorl d0,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
182 andl d6,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
183 eorl d7,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
184 addl d7,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
185 eorl d7,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
186 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
187 movel d3,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
188 lsrl #1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
189 eorl d1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
190 andl d6,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
191 eorl d7,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
192 addl d7,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
193 eorl d7,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
194 /* |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
195 d0 = a7b7a5b5e7f7e5f5 i7j7i5j5m7n7m5n5 c7d7c5d5g7h7g5h5 k7l7k5l5o7p7o5p5 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
196 d1 = a3b3a1b1e3f3e1f1 i3j3i1j1m3n3m1n1 c3d3c1d1g3h3g1h1 k3l3k1l1o3p3o1p1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
197 d2 = a6b6a4b4e6f6e4f4 i6j6i4j4m6n6m4n4 c6d6c4d4g6h6g4h4 k6l6k4l4o6p6o4p4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
198 d3 = a2b2a0b0e2f2e0f0 i2j2i0j0m2n2m0n0 c2d2c0d0g2h2g0h0 k2l2k0l0o2p2o0p0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
199 */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
200 movew d2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
201 movew d0,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
202 swap d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
203 movew d2,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
204 movew d7,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
205 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
206 movew d3,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
207 movew d1,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
208 swap d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
209 movew d3,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
210 movew d7,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
211 /* |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
212 d0 = a7b7a5b5e7f7e5f5 i7j7i5j5m7n7m5n5 a6b6a4b4e6f6e4f4 i6j6i4j4m6n6m4n4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
213 d1 = a3b3a1b1e3f3e1f1 i3j3i1j1m3n3m1n1 a2b2a0b0e2f2e0f0 i2j2i0j0m2n2m0n0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
214 d2 = c7d7c5d5g7h7g5h5 k7l7k5l5o7p7o5p5 c6d6c4d4g6h6g4h4 k6l6k4l4o6p6o4p4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
215 d3 = c3d3c1d1g3h3g1h1 k3l3k1l1o3p3o1p1 c2d2c0d0g2h2g0h0 k2l2k0l0o2p2o0p0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
216 */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
217 movel d2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
218 lsrl #2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
219 eorl d0,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
220 andl #0x33333333,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
221 eorl d7,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
222 lsll #2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
223 eorl d7,d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
224 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
225 movel d3,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
226 lsrl #2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
227 eorl d1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
228 andl #0x33333333,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
229 eorl d7,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
230 lsll #2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
231 eorl d7,d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
232 /* |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
233 d0 = a7b7c7d7e7f7g7h7 i7j7k7l7m7n7o7p7 a6b6c6d6e6f6g6h6 i6j6k6l6m6n6o6p6 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
234 d1 = a3b3c3d3e3f3g3h3 i3j3k3l3m3n3o3p3 a2b2c2d2e2f2g2h2 i2j2k2l2m2n2o2p2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
235 d2 = a5b5c5d5e5f5g5h5 i5j5k5l5m5n5o5p5 a4b4c4d4e4f4g4h4 i4j4k4l4m4n4o4p4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
236 d3 = a1b1c1d1e1f1g1h1 i1j1k1l1m1n1o1p1 a0b0c0d0e0f0g0h0 i0j0k0l0m0n0o0p0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
237 */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
238 swap d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
239 swap d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
240 swap d2 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
241 swap d3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
242 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
243 movel d0,a6 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
244 movel d2,a5 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
245 movel d1,a4 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
246 movel d3,a3 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
247 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
248 cmpl a0,a2 |
1086 | 249 bgt SDL_Atari_C2p8_pix16 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
250 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
251 movel a3,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
252 movel a4,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
253 movel a5,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
254 movel a6,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
255 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
256 /* Double the line ? */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
257 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
258 movel c2p_srcpitch,d0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
259 movel c2p_dstpitch,d1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
260 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
261 tstl c2p_dblligne |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
262 beqs SDL_Atari_C2p8_nodblline |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
263 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
264 movel c2p_curdst,a0 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
265 movel a0,a1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
266 addl d1,a1 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
267 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
268 movew c2p_width+2,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
269 lsrw #4,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
270 subql #1,d7 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
271 SDL_Atari_C2p8_dblloop: |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
272 movel a0@+,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
273 movel a0@+,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
274 movel a0@+,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
275 movel a0@+,a1@+ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
276 dbra d7,SDL_Atari_C2p8_dblloop |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
277 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
278 addl d1,c2p_curdst |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
279 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
280 SDL_Atari_C2p8_nodblline: |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
281 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
282 /* Next line */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
283 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
284 addl d0,c2p_cursrc |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
285 addl d1,c2p_curdst |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
286 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
287 subqw #1,c2p_row |
1086 | 288 bne SDL_Atari_C2p8_rowloop |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
289 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
290 moveml sp@+,d2-d7/a2-a6 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
291 rts |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
292 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
293 /* ------------ Conversion C2P, 4 bits ------------ */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
294 |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
295 _SDL_Atari_C2pConvert4: |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
296 movel sp@(4),c2p_source |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
297 movel sp@(8),c2p_dest |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
298 movel sp@(12),c2p_width |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
299 movel sp@(16),c2p_height |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
300 movel sp@(20),c2p_dblligne |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
301 movel sp@(24),c2p_srcpitch |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
302 movel sp@(28),c2p_dstpitch |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
303 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
304 moveml d2-d7/a2-a6,sp@- |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
305 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
306 movel c2p_source,a0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
307 movel c2p_dest,a1 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
308 lea _SDL_Atari_table_c2p,a2 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
309 movel #0x00070001,d3 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
310 #if defined(__M68020__) |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
311 moveq #0,d0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
312 #endif |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
313 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
314 movel c2p_height,d7 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
315 subql #1,d7 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
316 c2p4_bcly: |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
317 movel a0,a4 | Save start address of source |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
318 movel a1,a5 | Save start address of dest |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
319 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
320 | Conversion |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
321 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
322 movel c2p_width,d6 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
323 lsrw #4,d6 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
324 subql #1,d6 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
325 c2p4_bclx: |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
326 | Octets 0-7 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
327 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
328 moveq #0,d1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
329 moveq #7,d5 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
330 c2p4_bcl07: |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
331 #if defined(__M68020__) |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
332 moveb a0@+,d0 |
1086 | 333 lea a2@(0,d0:w:4),a3 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
334 #else |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
335 moveq #0,d0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
336 moveb a0@+,d0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
337 lslw #2,d0 |
1086 | 338 lea a2@(0,d0:w),a3 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
339 #endif |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
340 lsll #1,d1 |
1086 | 341 orl a3@,d1 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
342 dbra d5,c2p4_bcl07 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
343 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
344 movepl d1,a1@(0) |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
345 addw d3,a1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
346 swap d3 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
347 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
348 | Octets 8-15 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
349 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
350 moveq #0,d1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
351 moveq #7,d5 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
352 c2p4_bcl815: |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
353 #if defined(__M68020__) |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
354 moveb a0@+,d0 |
1086 | 355 lea a2@(0,d0:w:4),a3 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
356 #else |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
357 moveq #0,d0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
358 moveb a0@+,d0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
359 lslw #2,d0 |
1086 | 360 lea a2@(0,d0:w),a3 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
361 #endif |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
362 lsll #1,d1 |
1086 | 363 orl a3@,d1 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
364 dbra d5,c2p4_bcl815 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
365 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
366 movepl d1,a1@(0) |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
367 addw d3,a1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
368 swap d3 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
369 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
370 dbra d6,c2p4_bclx |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
371 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
372 | Double line ? |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
373 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
374 tstl c2p_dblligne |
1086 | 375 beqs c2p4_nodblligne |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
376 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
377 movel a5,a6 | src line |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
378 movel a5,a1 | dest line |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
379 addl c2p_dstpitch,a1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
380 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
381 movel c2p_width,d6 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
382 lsrw #3,d6 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
383 subql #1,d6 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
384 c2p4_copydbl: |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
385 movel a6@+,a1@+ |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
386 dbra d6,c2p4_copydbl |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
387 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
388 addl c2p_dstpitch,a5 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
389 c2p4_nodblligne: |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
390 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
391 | Next line |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
392 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
393 movel a4,a0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
394 addl c2p_srcpitch,a0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
395 movel a5,a1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
396 addl c2p_dstpitch,a1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
397 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
398 dbra d7,c2p4_bcly |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
399 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
400 moveml sp@+,d2-d7/a2-a6 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
401 rts |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
402 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
403 /* ------------ Conversion of a light palette in 4 bits ------------ */ |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
404 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
405 _SDL_Atari_C2pConvert4_pal: |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
406 /* a0 is a 256-word light palette */ |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
407 movel sp@(4),a0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
408 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
409 moveml d2-d3,sp@- |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
410 |
1086 | 411 lea _SDL_Atari_table_c2p,a1 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
412 movew #255,d3 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
413 c2p_pal_initbcl: |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
414 movew a0@+,d0 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
415 lsrw #4,d0 |
1086 | 416 andw #15,d0 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
417 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
418 moveq #3,d1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
419 c2p_pal_initbyte: |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
420 btst d1,d0 |
1086 | 421 sne d2 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
422 negw d2 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
423 moveb d2,a1@(0,d1:w) |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
424 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
425 dbra d1,c2p_pal_initbyte |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
426 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
427 addql #4,a1 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
428 dbra d3,c2p_pal_initbcl |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
429 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
430 moveml sp@+,d2-d3 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
431 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
432 rts |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
433 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
434 /* ------------ Buffers ------------ */ |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
435 |
1086 | 436 .bss |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
437 |
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
438 .even |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
439 .comm _SDL_Atari_C2pConvert,4 |
1086 | 440 .comm _SDL_Atari_table_c2p,1024 |
281
c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
441 |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
442 .comm c2p_source,4 /* Source framebuffer */ |
1086 | 443 .comm c2p_dest,4 /* Destination framebuffer */ |
444 .comm c2p_width,4 /* Width of zone to convert */ | |
734
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
445 .comm c2p_height,4 /* Height of zone to convert */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
446 .comm c2p_dblligne,4 /* Double the lines while converting ? */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
447 .comm c2p_srcpitch,4 /* Source pitch */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
448 .comm c2p_dstpitch,4 /* Destination pitch */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
449 .comm c2p_cursrc,4 /* Current source line */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
450 .comm c2p_curdst,4 /* Current destination line */ |
0310bb01091f
New C2P conversion routine
Patrice Mandin <patmandin@gmail.com>
parents:
297
diff
changeset
|
451 .comm c2p_rowlen,2 /* Line length in bytes */ |
1086 | 452 .comm c2p_row,2 /* Current line number */ |