src/video/ataricommon/SDL_ataric2p.S
author Patrice Mandin <patmandin@gmail.com>
Thu, 30 Jun 2005 12:03:19 +0000
changeset 1086 93207759e065
parent 734 0310bb01091f
child 1312 c9b51268668f
permissions -rw-r--r--
Cleanup C2P routine
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   443
	.comm	c2p_dest,4		/* Destination framebuffer */
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   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
93207759e065 Cleanup C2P routine
Patrice Mandin <patmandin@gmail.com>
parents: 734
diff changeset
   452
	.comm	c2p_row,2		/* Current line number */