1/*         ______   ___    ___
2 *        /\  _  \ /\_ \  /\_ \
3 *        \ \ \L\ \\//\ \ \//\ \      __     __   _ __   ___
4 *         \ \  __ \ \ \ \  \ \ \   /'__`\ /'_ `\/\`'__\/ __`\
5 *          \ \ \/\ \ \_\ \_ \_\ \_/\  __//\ \L\ \ \ \//\ \L\ \
6 *           \ \_\ \_\/\____\/\____\ \____\ \____ \ \_\\ \____/
7 *            \/_/\/_/\/____/\/____/\/____/\/___L\ \/_/ \/___/
8 *                                           /\____/
9 *                                           \_/__/
10 *
11 *      X-windows bank switching code. These routines will be called
12 *      with a line number in %eax and a pointer to the bitmap in %edx.
13 *      The bank switcher should select the appropriate bank for the
14 *      line, and replace %eax with a pointer to the start of the line.
15 *
16 *      By Michael Bukin.
17 *
18 *      See readme.txt for copyright information.
19 */
20
21
22#include "allegro/platform/alunixac.h"
23#include "../i386/asmdefs.inc"
24
25.text
26
27
28#ifndef ALLEGRO_NO_ASM
29	/* Use only with ASM calling convention.  */
30
31FUNC(_xwin_write_line_asm)
32	pushl %ecx
33	pushl %eax
34	pushl %edx
35	call GLOBL(_xwin_write_line)
36	popl %edx
37	popl %ecx  /* preserve %eax */
38	popl %ecx
39	ret
40
41
42FUNC(_xwin_unwrite_line_asm)
43	pushl %ecx
44	pushl %eax
45	pushl %edx
46	call GLOBL(_xwin_unwrite_line)
47	popl %edx
48	popl %eax
49	popl %ecx
50	ret
51
52#endif
53
54