mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
8815 lines
193 KiB
8815 lines
193 KiB
//
|
|
// Copyright (c) 1994 FirePower Systems, Inc.
|
|
//
|
|
// Module Name:
|
|
// textsub.s
|
|
//
|
|
// Abstract:
|
|
// This module includes asmmebler functions to be used
|
|
// in PSIDISP.DLL display driver for PowerPro & PowerTop. These
|
|
// functions are used for faster TextOut drawing.
|
|
//
|
|
// Original Author:
|
|
// Greg Walsh: 12-2-1994
|
|
// Adopted and modified to support both cached & non-cached VRAM and performance improvement by:
|
|
// Neil Ogura: 12-6-1994
|
|
// Extended to up to 32 dots character, transparency text supported and fixed pitch and PS are
|
|
// separated for performance by:
|
|
// Neil Ogura:
|
|
//
|
|
// Environment:
|
|
// User mode.
|
|
//
|
|
// Revision History:
|
|
//
|
|
//--
|
|
|
|
//
|
|
// Copyright (c) 1995 FirePower Systems, Inc.
|
|
// DO NOT DISTRIBUTE without permission
|
|
//
|
|
// $RCSfile: textsub.s $
|
|
// $Revision: 1.2 $
|
|
// $Date: 1996/04/10 17:59:51 $
|
|
// $Locker: $
|
|
//
|
|
|
|
#include "ksppc.h"
|
|
#include "ladj.h"
|
|
|
|
// Cache Flush control bit parameter stored in MS half word.
|
|
#define TFLUSHBIT 0x4000
|
|
#define TTOUCHBIT 0x2000
|
|
|
|
// This flag controls to use special routine for short width or not. Functionally, it shouldn't matter,
|
|
// but if this is TRUE, code size would be larger, but performance should be better. - Not necessarily.
|
|
// Performance measurement shows that not using special routine for short width is generalilry better.
|
|
#define USESHORT32 0
|
|
#define USESHORT16 0
|
|
#define USESHORT8 0
|
|
|
|
// This flag controls to use w1 register for initial dcbz offset. If this is TRUE, code size should be
|
|
// a little bit smaller, but performance may be a little worse.
|
|
#define SAVEDCBZ 0
|
|
|
|
// This flag controls if skipping OR'ing zero dots in case of transparency text.
|
|
#define SKIPZERO32 1
|
|
#define SKIPZERO16 1
|
|
#define SKIPZERO8 1
|
|
|
|
// Text parameter structure offset
|
|
#define TARGET 0
|
|
#define DEST 4
|
|
#define WIDTH 8
|
|
#define LINES 12
|
|
#define TDELTA 16
|
|
#define CTABLE 20
|
|
#define MTABLE 24
|
|
#define FstPGP 28
|
|
#define LastPGP 32
|
|
#define FENTRY 36
|
|
#define MAXLFL 40
|
|
#define CONTROL 44
|
|
#define CHARINC 48
|
|
#define SAVE1 52
|
|
#define SAVE2 56
|
|
#define SAVE3 60
|
|
#define SAVE4 64
|
|
#define SAVE5 68
|
|
#define SAVE6 72
|
|
#define SAVE7 76
|
|
#define SAVE8 80
|
|
|
|
// Stacl Slack offset
|
|
#define SLACK1 -4
|
|
#define SLACK2 -8
|
|
#define SLACK3 -12
|
|
#define SLACK4 -16
|
|
#define SLACK5 -20
|
|
#define SLACK6 -24
|
|
#define SLACK7 -28
|
|
#define SLACK8 -32
|
|
|
|
// Dispatch tables
|
|
|
|
.data
|
|
.align 3
|
|
|
|
.globl __mpcxpprocText8
|
|
__mpcxpprocText8:
|
|
.ualong __DrawText8_1A0
|
|
.ualong __DrawText8_1A1
|
|
.ualong __DrawText8_1A2
|
|
.ualong __DrawText8_1A3
|
|
.ualong __DrawText8_2A0
|
|
.ualong __DrawText8_2A1
|
|
.ualong __DrawText8_2A2
|
|
.ualong __DrawText8_2A3
|
|
.ualong __DrawText8_3A0
|
|
.ualong __DrawText8_3A1
|
|
.ualong __DrawText8_3A2
|
|
.ualong __DrawText8_3A3
|
|
.ualong __DrawText8_4A0
|
|
.ualong __DrawText8_4A1
|
|
.ualong __DrawText8_4A2
|
|
.ualong __DrawText8_4A3
|
|
.ualong __DrawText8_5A0
|
|
.ualong __DrawText8_5A1
|
|
.ualong __DrawText8_5A2
|
|
.ualong __DrawText8_5A3
|
|
.ualong __DrawText8_6A0
|
|
.ualong __DrawText8_6A1
|
|
.ualong __DrawText8_6A2
|
|
.ualong __DrawText8_6A3
|
|
.ualong __DrawText8_7A0
|
|
.ualong __DrawText8_7A1
|
|
.ualong __DrawText8_7A2
|
|
.ualong __DrawText8_7A3
|
|
.ualong __DrawText8_8A0
|
|
.ualong __DrawText8_8A1
|
|
.ualong __DrawText8_8A2
|
|
.ualong __DrawText8_8A3
|
|
.ualong __DrawText8_9A0
|
|
.ualong __DrawText8_9A1
|
|
.ualong __DrawText8_9A2
|
|
.ualong __DrawText8_9A3
|
|
.ualong __DrawText8_10A0
|
|
.ualong __DrawText8_10A1
|
|
.ualong __DrawText8_10A2
|
|
.ualong __DrawText8_10A3
|
|
.ualong __DrawText8_11A0
|
|
.ualong __DrawText8_11A1
|
|
.ualong __DrawText8_11A2
|
|
.ualong __DrawText8_11A3
|
|
.ualong __DrawText8_12A0
|
|
.ualong __DrawText8_12A1
|
|
.ualong __DrawText8_12A2
|
|
.ualong __DrawText8_12A3
|
|
.ualong __DrawText8_13A0
|
|
.ualong __DrawText8_13A1
|
|
.ualong __DrawText8_13A2
|
|
.ualong __DrawText8_13A3
|
|
.ualong __DrawText8_14A0
|
|
.ualong __DrawText8_14A1
|
|
.ualong __DrawText8_14A2
|
|
.ualong __DrawText8_14A3
|
|
.ualong __DrawText8_15A0
|
|
.ualong __DrawText8_15A1
|
|
.ualong __DrawText8_15A2
|
|
.ualong __DrawText8_15A3
|
|
.ualong __DrawText8_16A0
|
|
.ualong __DrawText8_16A1
|
|
.ualong __DrawText8_16A2
|
|
.ualong __DrawText8_16A3
|
|
.ualong __DrawText8_17A0
|
|
.ualong __DrawText8_17A1
|
|
.ualong __DrawText8_17A2
|
|
.ualong __DrawText8_17A3
|
|
.ualong __DrawText8_18A0
|
|
.ualong __DrawText8_18A1
|
|
.ualong __DrawText8_18A2
|
|
.ualong __DrawText8_18A3
|
|
.ualong __DrawText8_19A0
|
|
.ualong __DrawText8_19A1
|
|
.ualong __DrawText8_19A2
|
|
.ualong __DrawText8_19A3
|
|
.ualong __DrawText8_20A0
|
|
.ualong __DrawText8_20A1
|
|
.ualong __DrawText8_20A2
|
|
.ualong __DrawText8_20A3
|
|
.ualong __DrawText8_21A0
|
|
.ualong __DrawText8_21A1
|
|
.ualong __DrawText8_21A2
|
|
.ualong __DrawText8_21A3
|
|
.ualong __DrawText8_22A0
|
|
.ualong __DrawText8_22A1
|
|
.ualong __DrawText8_22A2
|
|
.ualong __DrawText8_22A3
|
|
.ualong __DrawText8_23A0
|
|
.ualong __DrawText8_23A1
|
|
.ualong __DrawText8_23A2
|
|
.ualong __DrawText8_23A3
|
|
.ualong __DrawText8_24A0
|
|
.ualong __DrawText8_24A1
|
|
.ualong __DrawText8_24A2
|
|
.ualong __DrawText8_24A3
|
|
.ualong __DrawText8_25A0
|
|
.ualong __DrawText8_25A1
|
|
.ualong __DrawText8_25A2
|
|
.ualong __DrawText8_25A3
|
|
.ualong __DrawText8_26A0
|
|
.ualong __DrawText8_26A1
|
|
.ualong __DrawText8_26A2
|
|
.ualong __DrawText8_26A3
|
|
.ualong __DrawText8_27A0
|
|
.ualong __DrawText8_27A1
|
|
.ualong __DrawText8_27A2
|
|
.ualong __DrawText8_27A3
|
|
.ualong __DrawText8_28A0
|
|
.ualong __DrawText8_28A1
|
|
.ualong __DrawText8_28A2
|
|
.ualong __DrawText8_28A3
|
|
.ualong __DrawText8_29A0
|
|
.ualong __DrawText8_29A1
|
|
.ualong __DrawText8_29A2
|
|
.ualong __DrawText8_29A3
|
|
.ualong __DrawText8_30A0
|
|
.ualong __DrawText8_30A1
|
|
.ualong __DrawText8_30A2
|
|
.ualong __DrawText8_30A3
|
|
.ualong __DrawText8_31A0
|
|
.ualong __DrawText8_31A1
|
|
.ualong __DrawText8_31A2
|
|
.ualong __DrawText8_31A3
|
|
.ualong __DrawText8_32A0
|
|
.ualong __DrawText8_32A1
|
|
.ualong __DrawText8_32A2
|
|
.ualong __DrawText8_32A3
|
|
//
|
|
.globl __mpcxpprocText8DCBZ
|
|
__mpcxpprocText8DCBZ:
|
|
.ualong __DrawText8_1A0DCBZ
|
|
.ualong __DrawText8_1A1DCBZ
|
|
.ualong __DrawText8_1A2DCBZ
|
|
.ualong __DrawText8_1A3DCBZ
|
|
.ualong __DrawText8_2A0DCBZ
|
|
.ualong __DrawText8_2A1DCBZ
|
|
.ualong __DrawText8_2A2DCBZ
|
|
.ualong __DrawText8_2A3DCBZ
|
|
.ualong __DrawText8_3A0DCBZ
|
|
.ualong __DrawText8_3A1DCBZ
|
|
.ualong __DrawText8_3A2DCBZ
|
|
.ualong __DrawText8_3A3DCBZ
|
|
.ualong __DrawText8_4A0DCBZ
|
|
.ualong __DrawText8_4A1DCBZ
|
|
.ualong __DrawText8_4A2DCBZ
|
|
.ualong __DrawText8_4A3DCBZ
|
|
.ualong __DrawText8_5A0DCBZ
|
|
.ualong __DrawText8_5A1DCBZ
|
|
.ualong __DrawText8_5A2DCBZ
|
|
.ualong __DrawText8_5A3DCBZ
|
|
.ualong __DrawText8_6A0DCBZ
|
|
.ualong __DrawText8_6A1DCBZ
|
|
.ualong __DrawText8_6A2DCBZ
|
|
.ualong __DrawText8_6A3DCBZ
|
|
.ualong __DrawText8_7A0DCBZ
|
|
.ualong __DrawText8_7A1DCBZ
|
|
.ualong __DrawText8_7A2DCBZ
|
|
.ualong __DrawText8_7A3DCBZ
|
|
.ualong __DrawText8_8A0DCBZ
|
|
.ualong __DrawText8_8A1DCBZ
|
|
.ualong __DrawText8_8A2DCBZ
|
|
.ualong __DrawText8_8A3DCBZ
|
|
.ualong __DrawText8_9A0DCBZ
|
|
.ualong __DrawText8_9A1DCBZ
|
|
.ualong __DrawText8_9A2DCBZ
|
|
.ualong __DrawText8_9A3DCBZ
|
|
.ualong __DrawText8_10A0DCBZ
|
|
.ualong __DrawText8_10A1DCBZ
|
|
.ualong __DrawText8_10A2DCBZ
|
|
.ualong __DrawText8_10A3DCBZ
|
|
.ualong __DrawText8_11A0DCBZ
|
|
.ualong __DrawText8_11A1DCBZ
|
|
.ualong __DrawText8_11A2DCBZ
|
|
.ualong __DrawText8_11A3DCBZ
|
|
.ualong __DrawText8_12A0DCBZ
|
|
.ualong __DrawText8_12A1DCBZ
|
|
.ualong __DrawText8_12A2DCBZ
|
|
.ualong __DrawText8_12A3DCBZ
|
|
.ualong __DrawText8_13A0DCBZ
|
|
.ualong __DrawText8_13A1DCBZ
|
|
.ualong __DrawText8_13A2DCBZ
|
|
.ualong __DrawText8_13A3DCBZ
|
|
.ualong __DrawText8_14A0DCBZ
|
|
.ualong __DrawText8_14A1DCBZ
|
|
.ualong __DrawText8_14A2DCBZ
|
|
.ualong __DrawText8_14A3DCBZ
|
|
.ualong __DrawText8_15A0DCBZ
|
|
.ualong __DrawText8_15A1DCBZ
|
|
.ualong __DrawText8_15A2DCBZ
|
|
.ualong __DrawText8_15A3DCBZ
|
|
.ualong __DrawText8_16A0DCBZ
|
|
.ualong __DrawText8_16A1DCBZ
|
|
.ualong __DrawText8_16A2DCBZ
|
|
.ualong __DrawText8_16A3DCBZ
|
|
.ualong __DrawText8_17A0DCBZ
|
|
.ualong __DrawText8_17A1DCBZ
|
|
.ualong __DrawText8_17A2DCBZ
|
|
.ualong __DrawText8_17A3DCBZ
|
|
.ualong __DrawText8_18A0DCBZ
|
|
.ualong __DrawText8_18A1DCBZ
|
|
.ualong __DrawText8_18A2DCBZ
|
|
.ualong __DrawText8_18A3DCBZ
|
|
.ualong __DrawText8_19A0DCBZ
|
|
.ualong __DrawText8_19A1DCBZ
|
|
.ualong __DrawText8_19A2DCBZ
|
|
.ualong __DrawText8_19A3DCBZ
|
|
.ualong __DrawText8_20A0DCBZ
|
|
.ualong __DrawText8_20A1DCBZ
|
|
.ualong __DrawText8_20A2DCBZ
|
|
.ualong __DrawText8_20A3DCBZ
|
|
.ualong __DrawText8_21A0DCBZ
|
|
.ualong __DrawText8_21A1DCBZ
|
|
.ualong __DrawText8_21A2DCBZ
|
|
.ualong __DrawText8_21A3DCBZ
|
|
.ualong __DrawText8_22A0DCBZ
|
|
.ualong __DrawText8_22A1DCBZ
|
|
.ualong __DrawText8_22A2DCBZ
|
|
.ualong __DrawText8_22A3DCBZ
|
|
.ualong __DrawText8_23A0DCBZ
|
|
.ualong __DrawText8_23A1DCBZ
|
|
.ualong __DrawText8_23A2DCBZ
|
|
.ualong __DrawText8_23A3DCBZ
|
|
.ualong __DrawText8_24A0DCBZ
|
|
.ualong __DrawText8_24A1DCBZ
|
|
.ualong __DrawText8_24A2DCBZ
|
|
.ualong __DrawText8_24A3DCBZ
|
|
.ualong __DrawText8_25A0DCBZ
|
|
.ualong __DrawText8_25A1DCBZ
|
|
.ualong __DrawText8_25A2DCBZ
|
|
.ualong __DrawText8_25A3DCBZ
|
|
.ualong __DrawText8_26A0DCBZ
|
|
.ualong __DrawText8_26A1DCBZ
|
|
.ualong __DrawText8_26A2DCBZ
|
|
.ualong __DrawText8_26A3DCBZ
|
|
.ualong __DrawText8_27A0DCBZ
|
|
.ualong __DrawText8_27A1DCBZ
|
|
.ualong __DrawText8_27A2DCBZ
|
|
.ualong __DrawText8_27A3DCBZ
|
|
.ualong __DrawText8_28A0DCBZ
|
|
.ualong __DrawText8_28A1DCBZ
|
|
.ualong __DrawText8_28A2DCBZ
|
|
.ualong __DrawText8_28A3DCBZ
|
|
.ualong __DrawText8_29A0DCBZ
|
|
.ualong __DrawText8_29A1DCBZ
|
|
.ualong __DrawText8_29A2DCBZ
|
|
.ualong __DrawText8_29A3DCBZ
|
|
.ualong __DrawText8_30A0DCBZ
|
|
.ualong __DrawText8_30A1DCBZ
|
|
.ualong __DrawText8_30A2DCBZ
|
|
.ualong __DrawText8_30A3DCBZ
|
|
.ualong __DrawText8_31A0DCBZ
|
|
.ualong __DrawText8_31A1DCBZ
|
|
.ualong __DrawText8_31A2DCBZ
|
|
.ualong __DrawText8_31A3DCBZ
|
|
.ualong __DrawText8_32A0DCBZ
|
|
.ualong __DrawText8_32A1DCBZ
|
|
.ualong __DrawText8_32A2DCBZ
|
|
.ualong __DrawText8_32A3DCBZ
|
|
//
|
|
.globl __mpcxpprocTransText8
|
|
__mpcxpprocTransText8:
|
|
.ualong __DrawTransText8_1A0
|
|
.ualong __DrawTransText8_1A1
|
|
.ualong __DrawTransText8_1A2
|
|
.ualong __DrawTransText8_1A3
|
|
.ualong __DrawTransText8_2A0
|
|
.ualong __DrawTransText8_2A1
|
|
.ualong __DrawTransText8_2A2
|
|
.ualong __DrawTransText8_2A3
|
|
.ualong __DrawTransText8_3A0
|
|
.ualong __DrawTransText8_3A1
|
|
.ualong __DrawTransText8_3A2
|
|
.ualong __DrawTransText8_3A3
|
|
.ualong __DrawTransText8_4A0
|
|
.ualong __DrawTransText8_4A1
|
|
.ualong __DrawTransText8_4A2
|
|
.ualong __DrawTransText8_4A3
|
|
.ualong __DrawTransText8_5A0
|
|
.ualong __DrawTransText8_5A1
|
|
.ualong __DrawTransText8_5A2
|
|
.ualong __DrawTransText8_5A3
|
|
.ualong __DrawTransText8_6A0
|
|
.ualong __DrawTransText8_6A1
|
|
.ualong __DrawTransText8_6A2
|
|
.ualong __DrawTransText8_6A3
|
|
.ualong __DrawTransText8_7A0
|
|
.ualong __DrawTransText8_7A1
|
|
.ualong __DrawTransText8_7A2
|
|
.ualong __DrawTransText8_7A3
|
|
.ualong __DrawTransText8_8A0
|
|
.ualong __DrawTransText8_8A1
|
|
.ualong __DrawTransText8_8A2
|
|
.ualong __DrawTransText8_8A3
|
|
.ualong __DrawTransText8_9A0
|
|
.ualong __DrawTransText8_9A1
|
|
.ualong __DrawTransText8_9A2
|
|
.ualong __DrawTransText8_9A3
|
|
.ualong __DrawTransText8_10A0
|
|
.ualong __DrawTransText8_10A1
|
|
.ualong __DrawTransText8_10A2
|
|
.ualong __DrawTransText8_10A3
|
|
.ualong __DrawTransText8_11A0
|
|
.ualong __DrawTransText8_11A1
|
|
.ualong __DrawTransText8_11A2
|
|
.ualong __DrawTransText8_11A3
|
|
.ualong __DrawTransText8_12A0
|
|
.ualong __DrawTransText8_12A1
|
|
.ualong __DrawTransText8_12A2
|
|
.ualong __DrawTransText8_12A3
|
|
.ualong __DrawTransText8_13A0
|
|
.ualong __DrawTransText8_13A1
|
|
.ualong __DrawTransText8_13A2
|
|
.ualong __DrawTransText8_13A3
|
|
.ualong __DrawTransText8_14A0
|
|
.ualong __DrawTransText8_14A1
|
|
.ualong __DrawTransText8_14A2
|
|
.ualong __DrawTransText8_14A3
|
|
.ualong __DrawTransText8_15A0
|
|
.ualong __DrawTransText8_15A1
|
|
.ualong __DrawTransText8_15A2
|
|
.ualong __DrawTransText8_15A3
|
|
.ualong __DrawTransText8_16A0
|
|
.ualong __DrawTransText8_16A1
|
|
.ualong __DrawTransText8_16A2
|
|
.ualong __DrawTransText8_16A3
|
|
.ualong __DrawTransText8_17A0
|
|
.ualong __DrawTransText8_17A1
|
|
.ualong __DrawTransText8_17A2
|
|
.ualong __DrawTransText8_17A3
|
|
.ualong __DrawTransText8_18A0
|
|
.ualong __DrawTransText8_18A1
|
|
.ualong __DrawTransText8_18A2
|
|
.ualong __DrawTransText8_18A3
|
|
.ualong __DrawTransText8_19A0
|
|
.ualong __DrawTransText8_19A1
|
|
.ualong __DrawTransText8_19A2
|
|
.ualong __DrawTransText8_19A3
|
|
.ualong __DrawTransText8_20A0
|
|
.ualong __DrawTransText8_20A1
|
|
.ualong __DrawTransText8_20A2
|
|
.ualong __DrawTransText8_20A3
|
|
.ualong __DrawTransText8_21A0
|
|
.ualong __DrawTransText8_21A1
|
|
.ualong __DrawTransText8_21A2
|
|
.ualong __DrawTransText8_21A3
|
|
.ualong __DrawTransText8_22A0
|
|
.ualong __DrawTransText8_22A1
|
|
.ualong __DrawTransText8_22A2
|
|
.ualong __DrawTransText8_22A3
|
|
.ualong __DrawTransText8_23A0
|
|
.ualong __DrawTransText8_23A1
|
|
.ualong __DrawTransText8_23A2
|
|
.ualong __DrawTransText8_23A3
|
|
.ualong __DrawTransText8_24A0
|
|
.ualong __DrawTransText8_24A1
|
|
.ualong __DrawTransText8_24A2
|
|
.ualong __DrawTransText8_24A3
|
|
.ualong __DrawTransText8_25A0
|
|
.ualong __DrawTransText8_25A1
|
|
.ualong __DrawTransText8_25A2
|
|
.ualong __DrawTransText8_25A3
|
|
.ualong __DrawTransText8_26A0
|
|
.ualong __DrawTransText8_26A1
|
|
.ualong __DrawTransText8_26A2
|
|
.ualong __DrawTransText8_26A3
|
|
.ualong __DrawTransText8_27A0
|
|
.ualong __DrawTransText8_27A1
|
|
.ualong __DrawTransText8_27A2
|
|
.ualong __DrawTransText8_27A3
|
|
.ualong __DrawTransText8_28A0
|
|
.ualong __DrawTransText8_28A1
|
|
.ualong __DrawTransText8_28A2
|
|
.ualong __DrawTransText8_28A3
|
|
.ualong __DrawTransText8_29A0
|
|
.ualong __DrawTransText8_29A1
|
|
.ualong __DrawTransText8_29A2
|
|
.ualong __DrawTransText8_29A3
|
|
.ualong __DrawTransText8_30A0
|
|
.ualong __DrawTransText8_30A1
|
|
.ualong __DrawTransText8_30A2
|
|
.ualong __DrawTransText8_30A3
|
|
.ualong __DrawTransText8_31A0
|
|
.ualong __DrawTransText8_31A1
|
|
.ualong __DrawTransText8_31A2
|
|
.ualong __DrawTransText8_31A3
|
|
.ualong __DrawTransText8_32A0
|
|
.ualong __DrawTransText8_32A1
|
|
.ualong __DrawTransText8_32A2
|
|
.ualong __DrawTransText8_32A3
|
|
//
|
|
.globl __mpcxpprocText16
|
|
__mpcxpprocText16:
|
|
.ualong __DrawText16_1A
|
|
.ualong __DrawText16_1U
|
|
.ualong __DrawText16_2A
|
|
.ualong __DrawText16_2U
|
|
.ualong __DrawText16_3A
|
|
.ualong __DrawText16_3U
|
|
.ualong __DrawText16_4A
|
|
.ualong __DrawText16_4U
|
|
.ualong __DrawText16_5A
|
|
.ualong __DrawText16_5U
|
|
.ualong __DrawText16_6A
|
|
.ualong __DrawText16_6U
|
|
.ualong __DrawText16_7A
|
|
.ualong __DrawText16_7U
|
|
.ualong __DrawText16_8A
|
|
.ualong __DrawText16_8U
|
|
.ualong __DrawText16_9A
|
|
.ualong __DrawText16_9U
|
|
.ualong __DrawText16_10A
|
|
.ualong __DrawText16_10U
|
|
.ualong __DrawText16_11A
|
|
.ualong __DrawText16_11U
|
|
.ualong __DrawText16_12A
|
|
.ualong __DrawText16_12U
|
|
.ualong __DrawText16_13A
|
|
.ualong __DrawText16_13U
|
|
.ualong __DrawText16_14A
|
|
.ualong __DrawText16_14U
|
|
.ualong __DrawText16_15A
|
|
.ualong __DrawText16_15U
|
|
.ualong __DrawText16_16A
|
|
.ualong __DrawText16_16U
|
|
.ualong __DrawText16_17A
|
|
.ualong __DrawText16_17U
|
|
.ualong __DrawText16_18A
|
|
.ualong __DrawText16_18U
|
|
.ualong __DrawText16_19A
|
|
.ualong __DrawText16_19U
|
|
.ualong __DrawText16_20A
|
|
.ualong __DrawText16_20U
|
|
.ualong __DrawText16_21A
|
|
.ualong __DrawText16_21U
|
|
.ualong __DrawText16_22A
|
|
.ualong __DrawText16_22U
|
|
.ualong __DrawText16_23A
|
|
.ualong __DrawText16_23U
|
|
.ualong __DrawText16_24A
|
|
.ualong __DrawText16_24U
|
|
.ualong __DrawText16_25A
|
|
.ualong __DrawText16_25U
|
|
.ualong __DrawText16_26A
|
|
.ualong __DrawText16_26U
|
|
.ualong __DrawText16_27A
|
|
.ualong __DrawText16_27U
|
|
.ualong __DrawText16_28A
|
|
.ualong __DrawText16_28U
|
|
.ualong __DrawText16_29A
|
|
.ualong __DrawText16_29U
|
|
.ualong __DrawText16_30A
|
|
.ualong __DrawText16_30U
|
|
.ualong __DrawText16_31A
|
|
.ualong __DrawText16_31U
|
|
.ualong __DrawText16_32A
|
|
.ualong __DrawText16_32U
|
|
//
|
|
.globl __mpcxpprocText16DCBZ
|
|
__mpcxpprocText16DCBZ:
|
|
.ualong __DrawText16_1ADCBZ
|
|
.ualong __DrawText16_1UDCBZ
|
|
.ualong __DrawText16_2ADCBZ
|
|
.ualong __DrawText16_2UDCBZ
|
|
.ualong __DrawText16_3ADCBZ
|
|
.ualong __DrawText16_3UDCBZ
|
|
.ualong __DrawText16_4ADCBZ
|
|
.ualong __DrawText16_4UDCBZ
|
|
.ualong __DrawText16_5ADCBZ
|
|
.ualong __DrawText16_5UDCBZ
|
|
.ualong __DrawText16_6ADCBZ
|
|
.ualong __DrawText16_6UDCBZ
|
|
.ualong __DrawText16_7ADCBZ
|
|
.ualong __DrawText16_7UDCBZ
|
|
.ualong __DrawText16_8ADCBZ
|
|
.ualong __DrawText16_8UDCBZ
|
|
.ualong __DrawText16_9ADCBZ
|
|
.ualong __DrawText16_9UDCBZ
|
|
.ualong __DrawText16_10ADCBZ
|
|
.ualong __DrawText16_10UDCBZ
|
|
.ualong __DrawText16_11ADCBZ
|
|
.ualong __DrawText16_11UDCBZ
|
|
.ualong __DrawText16_12ADCBZ
|
|
.ualong __DrawText16_12UDCBZ
|
|
.ualong __DrawText16_13ADCBZ
|
|
.ualong __DrawText16_13UDCBZ
|
|
.ualong __DrawText16_14ADCBZ
|
|
.ualong __DrawText16_14UDCBZ
|
|
.ualong __DrawText16_15ADCBZ
|
|
.ualong __DrawText16_15UDCBZ
|
|
.ualong __DrawText16_16ADCBZ
|
|
.ualong __DrawText16_16UDCBZ
|
|
.ualong __DrawText16_17ADCBZ
|
|
.ualong __DrawText16_17UDCBZ
|
|
.ualong __DrawText16_18ADCBZ
|
|
.ualong __DrawText16_18UDCBZ
|
|
.ualong __DrawText16_19ADCBZ
|
|
.ualong __DrawText16_19UDCBZ
|
|
.ualong __DrawText16_20ADCBZ
|
|
.ualong __DrawText16_20UDCBZ
|
|
.ualong __DrawText16_21ADCBZ
|
|
.ualong __DrawText16_21UDCBZ
|
|
.ualong __DrawText16_22ADCBZ
|
|
.ualong __DrawText16_22UDCBZ
|
|
.ualong __DrawText16_23ADCBZ
|
|
.ualong __DrawText16_23UDCBZ
|
|
.ualong __DrawText16_24ADCBZ
|
|
.ualong __DrawText16_24UDCBZ
|
|
.ualong __DrawText16_25ADCBZ
|
|
.ualong __DrawText16_25UDCBZ
|
|
.ualong __DrawText16_26ADCBZ
|
|
.ualong __DrawText16_26UDCBZ
|
|
.ualong __DrawText16_27ADCBZ
|
|
.ualong __DrawText16_27UDCBZ
|
|
.ualong __DrawText16_28ADCBZ
|
|
.ualong __DrawText16_28UDCBZ
|
|
.ualong __DrawText16_29ADCBZ
|
|
.ualong __DrawText16_29UDCBZ
|
|
.ualong __DrawText16_30ADCBZ
|
|
.ualong __DrawText16_30UDCBZ
|
|
.ualong __DrawText16_31ADCBZ
|
|
.ualong __DrawText16_31UDCBZ
|
|
.ualong __DrawText16_32ADCBZ
|
|
.ualong __DrawText16_32UDCBZ
|
|
//
|
|
.globl __mpcxpprocTransText16
|
|
__mpcxpprocTransText16:
|
|
.ualong __DrawTransText16_1A
|
|
.ualong __DrawTransText16_1U
|
|
.ualong __DrawTransText16_2A
|
|
.ualong __DrawTransText16_2U
|
|
.ualong __DrawTransText16_3A
|
|
.ualong __DrawTransText16_3U
|
|
.ualong __DrawTransText16_4A
|
|
.ualong __DrawTransText16_4U
|
|
.ualong __DrawTransText16_5A
|
|
.ualong __DrawTransText16_5U
|
|
.ualong __DrawTransText16_6A
|
|
.ualong __DrawTransText16_6U
|
|
.ualong __DrawTransText16_7A
|
|
.ualong __DrawTransText16_7U
|
|
.ualong __DrawTransText16_8A
|
|
.ualong __DrawTransText16_8U
|
|
.ualong __DrawTransText16_9A
|
|
.ualong __DrawTransText16_9U
|
|
.ualong __DrawTransText16_10A
|
|
.ualong __DrawTransText16_10U
|
|
.ualong __DrawTransText16_11A
|
|
.ualong __DrawTransText16_11U
|
|
.ualong __DrawTransText16_12A
|
|
.ualong __DrawTransText16_12U
|
|
.ualong __DrawTransText16_13A
|
|
.ualong __DrawTransText16_13U
|
|
.ualong __DrawTransText16_14A
|
|
.ualong __DrawTransText16_14U
|
|
.ualong __DrawTransText16_15A
|
|
.ualong __DrawTransText16_15U
|
|
.ualong __DrawTransText16_16A
|
|
.ualong __DrawTransText16_16U
|
|
.ualong __DrawTransText16_17A
|
|
.ualong __DrawTransText16_17U
|
|
.ualong __DrawTransText16_18A
|
|
.ualong __DrawTransText16_18U
|
|
.ualong __DrawTransText16_19A
|
|
.ualong __DrawTransText16_19U
|
|
.ualong __DrawTransText16_20A
|
|
.ualong __DrawTransText16_20U
|
|
.ualong __DrawTransText16_21A
|
|
.ualong __DrawTransText16_21U
|
|
.ualong __DrawTransText16_22A
|
|
.ualong __DrawTransText16_22U
|
|
.ualong __DrawTransText16_23A
|
|
.ualong __DrawTransText16_23U
|
|
.ualong __DrawTransText16_24A
|
|
.ualong __DrawTransText16_24U
|
|
.ualong __DrawTransText16_25A
|
|
.ualong __DrawTransText16_25U
|
|
.ualong __DrawTransText16_26A
|
|
.ualong __DrawTransText16_26U
|
|
.ualong __DrawTransText16_27A
|
|
.ualong __DrawTransText16_27U
|
|
.ualong __DrawTransText16_28A
|
|
.ualong __DrawTransText16_28U
|
|
.ualong __DrawTransText16_29A
|
|
.ualong __DrawTransText16_29U
|
|
.ualong __DrawTransText16_30A
|
|
.ualong __DrawTransText16_30U
|
|
.ualong __DrawTransText16_31A
|
|
.ualong __DrawTransText16_31U
|
|
.ualong __DrawTransText16_32A
|
|
.ualong __DrawTransText16_32U
|
|
//
|
|
.globl __mpcxpprocText32DCBZ
|
|
__mpcxpprocText32DCBZ:
|
|
.ualong __DrawText32_1DCBZ
|
|
.ualong __DrawText32_2DCBZ
|
|
.ualong __DrawText32_3DCBZ
|
|
.ualong __DrawText32_4DCBZ
|
|
.ualong __DrawText32_5DCBZ
|
|
.ualong __DrawText32_6DCBZ
|
|
.ualong __DrawText32_7DCBZ
|
|
.ualong __DrawText32_8DCBZ
|
|
.ualong __DrawText32_9DCBZ
|
|
.ualong __DrawText32_10DCBZ
|
|
.ualong __DrawText32_11DCBZ
|
|
.ualong __DrawText32_12DCBZ
|
|
.ualong __DrawText32_13DCBZ
|
|
.ualong __DrawText32_14DCBZ
|
|
.ualong __DrawText32_15DCBZ
|
|
.ualong __DrawText32_16DCBZ
|
|
.ualong __DrawText32_17DCBZ
|
|
.ualong __DrawText32_18DCBZ
|
|
.ualong __DrawText32_19DCBZ
|
|
.ualong __DrawText32_20DCBZ
|
|
.ualong __DrawText32_21DCBZ
|
|
.ualong __DrawText32_22DCBZ
|
|
.ualong __DrawText32_23DCBZ
|
|
.ualong __DrawText32_24DCBZ
|
|
.ualong __DrawText32_25DCBZ
|
|
.ualong __DrawText32_26DCBZ
|
|
.ualong __DrawText32_27DCBZ
|
|
.ualong __DrawText32_28DCBZ
|
|
.ualong __DrawText32_29DCBZ
|
|
.ualong __DrawText32_30DCBZ
|
|
.ualong __DrawText32_31DCBZ
|
|
.ualong __DrawText32_32DCBZ
|
|
//
|
|
.globl __mpcxpprocText32
|
|
__mpcxpprocText32:
|
|
.ualong __DrawText32_1
|
|
.ualong __DrawText32_2
|
|
.ualong __DrawText32_3
|
|
.ualong __DrawText32_4
|
|
.ualong __DrawText32_5
|
|
.ualong __DrawText32_6
|
|
.ualong __DrawText32_7
|
|
.ualong __DrawText32_8
|
|
.ualong __DrawText32_9
|
|
.ualong __DrawText32_10
|
|
.ualong __DrawText32_11
|
|
.ualong __DrawText32_12
|
|
.ualong __DrawText32_13
|
|
.ualong __DrawText32_14
|
|
.ualong __DrawText32_15
|
|
.ualong __DrawText32_16
|
|
.ualong __DrawText32_17
|
|
.ualong __DrawText32_18
|
|
.ualong __DrawText32_19
|
|
.ualong __DrawText32_20
|
|
.ualong __DrawText32_21
|
|
.ualong __DrawText32_22
|
|
.ualong __DrawText32_23
|
|
.ualong __DrawText32_24
|
|
.ualong __DrawText32_25
|
|
.ualong __DrawText32_26
|
|
.ualong __DrawText32_27
|
|
.ualong __DrawText32_28
|
|
.ualong __DrawText32_29
|
|
.ualong __DrawText32_30
|
|
.ualong __DrawText32_31
|
|
.ualong __DrawText32_32
|
|
//
|
|
.globl __mpcxpprocTransText32
|
|
__mpcxpprocTransText32:
|
|
.ualong __DrawTransText32_1
|
|
.ualong __DrawTransText32_2
|
|
.ualong __DrawTransText32_3
|
|
.ualong __DrawTransText32_4
|
|
.ualong __DrawTransText32_5
|
|
.ualong __DrawTransText32_6
|
|
.ualong __DrawTransText32_7
|
|
.ualong __DrawTransText32_8
|
|
.ualong __DrawTransText32_9
|
|
.ualong __DrawTransText32_10
|
|
.ualong __DrawTransText32_11
|
|
.ualong __DrawTransText32_12
|
|
.ualong __DrawTransText32_13
|
|
.ualong __DrawTransText32_14
|
|
.ualong __DrawTransText32_15
|
|
.ualong __DrawTransText32_16
|
|
.ualong __DrawTransText32_17
|
|
.ualong __DrawTransText32_18
|
|
.ualong __DrawTransText32_19
|
|
.ualong __DrawTransText32_20
|
|
.ualong __DrawTransText32_21
|
|
.ualong __DrawTransText32_22
|
|
.ualong __DrawTransText32_23
|
|
.ualong __DrawTransText32_24
|
|
.ualong __DrawTransText32_25
|
|
.ualong __DrawTransText32_26
|
|
.ualong __DrawTransText32_27
|
|
.ualong __DrawTransText32_28
|
|
.ualong __DrawTransText32_29
|
|
.ualong __DrawTransText32_30
|
|
.ualong __DrawTransText32_31
|
|
.ualong __DrawTransText32_32
|
|
//
|
|
.globl __psfontfetchentry
|
|
__psfontfetchentry:
|
|
.ualong ps1bytefont
|
|
.ualong ps2bytefont
|
|
.ualong ps3bytefont
|
|
.ualong ps4bytefont
|
|
//
|
|
.globl __ps2fontfetchentry
|
|
__ps2fontfetchentry:
|
|
.ualong ps1bytefont2
|
|
.ualong ps2bytefont2
|
|
.ualong ps3bytefont2
|
|
.ualong ps4bytefont2
|
|
//
|
|
.globl __fixedfontfetchentry
|
|
__fixedfontfetchentry:
|
|
.ualong fixed1bytefont
|
|
.ualong fixed2bytefont
|
|
.ualong fixed3bytefont
|
|
.ualong fixed4bytefont
|
|
//
|
|
.text
|
|
//
|
|
//*************************************************************************************************
|
|
SPECIAL_ENTRY(PSTextOut)
|
|
//
|
|
// Input Parameters:
|
|
// r3: The pointer to the parameter structure as follows.
|
|
// TARGET [00] : Target address (top of the line address)
|
|
// DEST [04] : Destance from the lop of the line to the first byte to be drawn
|
|
// WIDTH [08] : Byte width to be drawn in total
|
|
// LINES [12] : Number of lines to be drawn
|
|
// TDELTA [16] : Target line increments byte per line
|
|
// CTABLE [20] : Color table to use
|
|
// MTABLE [24] : Mask table to use for transparent text
|
|
// FstPGP [28] : Pointer to the GLYPHRAST
|
|
// LastPGP [32] : Pointer to the last GLYPHRAST
|
|
// FENTRY [36] : Font fetch entry point (verying for 1~4 bytes font)
|
|
// L1CACHE [40] : Maximum number of cache lines to flush
|
|
// CONTROL [44] : Operation control flag
|
|
// bit 1 (TFLUSHBIT): Target Flush flag 0:No Flush, 1:Flush
|
|
// not used for now (bit 2 (TTOUCHBIT): Target touch using "dcbz" 0:No Touch, 1:Touch)
|
|
// CHARINC [48] : Not used for PS
|
|
// SAVE1 [52] : Register save area 1
|
|
// SAVE2 [56] : Register save area 2
|
|
// SAVE3 [60] : Register save area 3
|
|
// SAVE4 [64] : Register save area 4
|
|
// SAVE5 [68] : Register save area 5
|
|
// SAVE6 [72] : Register save area 6
|
|
// SAVE7 [76] : Register save area 7
|
|
// SAVE8 [80] : Register save area 8
|
|
//
|
|
// Register usage:
|
|
// r0: mask (work register for transparent text)
|
|
// r4: w (Work register)
|
|
// r5: w1 (Work register)
|
|
// r6: pgpFirst (first pgp address) -> used for cacheControl (cache control word & max cache entry number) later
|
|
// r7: pgp (Pointer to pgp) -> used for start cache flush address later
|
|
// r8: mpnibbleulMask (mask pattern for transparent text)
|
|
// r9: mpnibbleulDraw (Pointer to the color table) -> used for end cache flush address later
|
|
// r10: linecounter (number of lines to process)
|
|
// r11: pjDst (Pointer to the target)
|
|
// r12: ulBits (Loaded font data)
|
|
// r14: pjBits (Ponter to the font pattern)
|
|
// r15: delta (Target byte increments between lines)
|
|
// r16: pgpLast (Pointer to the last pgp)
|
|
// r17: pjDstScanLine (Top of the line address (incrementing))
|
|
// CTR: Used for holding font fetch entry (1~4 bytes)
|
|
//
|
|
|
|
// Register defs
|
|
|
|
#define mask r0
|
|
#define textparam r3
|
|
#define w r4
|
|
#define w1 r5
|
|
#define pgpFirst r6
|
|
#define cacheControl r6
|
|
#define pgp r7
|
|
#define startCache r7
|
|
#define mpnibbleulMask r8
|
|
#define mpnibbleulDraw r9
|
|
#define endCache r9
|
|
#define linecounter r10
|
|
#define pjDst r11
|
|
#define ulBits r12
|
|
#define pjBits r14
|
|
#define delta r15
|
|
#define pgpLast r16
|
|
#define pjDstScanLine r17
|
|
|
|
// WARNING: Definitiion of GLYPHRAST structures shared with text.c
|
|
// typedef struct {
|
|
// USHORT cjBits;
|
|
// USHORT djDst;
|
|
// USHORT startline;
|
|
// USHORT endline;
|
|
// PBYTE pprocFirstText;
|
|
// PBYTE pjBits;
|
|
// } GLYPHRAST;
|
|
//
|
|
#define GLYPHRAST_cjBits 0
|
|
#define GLYPHRAST_djDst 2
|
|
#define GLYPHRAST_startline 4
|
|
#define GLYPHRAST_endline 6
|
|
#define GLYPHRAST_pprocFirstText 8
|
|
#define GLYPHRAST_pjBits 12
|
|
#define CBGLYPHRAST 16
|
|
//
|
|
stw r31,SLACK1(sp)
|
|
mflr r31
|
|
//
|
|
// Save non-volatile registers
|
|
//
|
|
stw r14,SLACK2(sp)
|
|
stw r15,SLACK3(sp)
|
|
stw r16,SLACK4(sp)
|
|
stw r17,SLACK5(sp)
|
|
//
|
|
PROLOGUE_END(PSTextOut)
|
|
//
|
|
lwz linecounter,LINES(textparam) // Get number of lines to draw
|
|
and. linecounter,linecounter,linecounter // Any lines to draw?
|
|
beq pstext_exit // No -> just exit
|
|
//
|
|
lwz pgpFirst,FstPGP(textparam) // Get first PGP address
|
|
lwz pjDstScanLine,TARGET(textparam) // Get top of the line address
|
|
lwz mpnibbleulDraw,CTABLE(textparam) // Get color table address
|
|
lwz mpnibbleulMask,MTABLE(textparam) // Get mask table address (used only for transparent text)
|
|
lwz pgpLast,LastPGP(textparam) // Get last pgp address
|
|
lwz delta,TDELTA(textparam) // Target byte increment between lines
|
|
lwz w,FENTRY(textparam)
|
|
mtctr w // CTR <- font fetch entry (1~4 bytes)
|
|
pstext_00: // Start of line loop
|
|
mr pgp,pgpFirst // Get first pgp address
|
|
pstext_10: // Start of glyph loop
|
|
// lhz w,GLYPHRAST_startline(pgp) // Load GLYPH start line
|
|
// cmplw linecounter,w // Started?
|
|
// bgt- pstext_20 // Not yet -> skip drawing
|
|
// lwz pjBits,GLYPHRAST_pjBits(pgp) // Load pjBits of the first glyph
|
|
// lhz w,GLYPHRAST_endline(pgp) // Load GLYPH end line
|
|
// cmplw linecounter,w // Over?
|
|
// bgtctr+ // No -> go get minimum necessary bytes of font data
|
|
lhz w,GLYPHRAST_endline(pgp) // Load GLYPH end line
|
|
cmplw linecounter,w // Over?
|
|
ble- pstext_20 // Yes -> do nothing
|
|
lhz w,GLYPHRAST_startline(pgp) // Load GLYPH start line
|
|
cmplw linecounter,w // Started?
|
|
lwz pjBits,GLYPHRAST_pjBits(pgp) // Load pjBits of the first glyph
|
|
blectr+ // Yes -> draw the line
|
|
pstext_20:
|
|
addi pgp,pgp,CBGLYPHRAST // Increment to the next glyph
|
|
cmplw pgp,pgpLast // End of the glyph?
|
|
ble pstext_10 // No -> next glyph
|
|
add pjDstScanLine,pjDstScanLine,delta // Target address increment
|
|
addic. linecounter,linecounter,-1 // Decrement line counter
|
|
bne pstext_00 // More lines -> loop
|
|
b pstext_30 // No -> flush cache
|
|
//
|
|
ps4bytefont:
|
|
lbz ulBits,3(pjBits) // Load font pattern (byte-3)
|
|
ps3bytefont:
|
|
lbz w1,2(pjBits) // Load font pattern (byte-2)
|
|
rlwimi ulBits,w1,8,16,23 // Make concatinated font image
|
|
ps2bytefont:
|
|
lbz w1,1(pjBits) // Load font pattern (byte-1)
|
|
rlwimi ulBits,w1,16,8,15 // Make concatinated font image
|
|
ps1bytefont:
|
|
lbz w1,0(pjBits) // Load font pattern (byte-0)
|
|
rlwimi ulBits,w1,24,0,7 // Make concatinated font image
|
|
lwz w,GLYPHRAST_pprocFirstText(pgp) // Get subroutine address to call for this glyph
|
|
mtlr w // LR <- Subroutine address to call
|
|
lhz w,GLYPHRAST_cjBits(pgp) // Load cjBits (increment byte of fonts)
|
|
lhz w1,GLYPHRAST_djDst(pgp) // Load djDst (Distance from the top of the line)
|
|
add pjDst,pjDstScanLine,w1 // pjDst <- Target address to draw the glyph
|
|
add pjBits,w,pjBits // Update font pettern address
|
|
stw pjBits,GLYPHRAST_pjBits(pgp) // And save it in the GLYPHRAST structure
|
|
#if SAVEDCBZ
|
|
addi w, pjDst, 31 // w <- address to "dcbz" when necessary
|
|
#endif
|
|
blrl // Draw curent line of the current glyph
|
|
addi pgp,pgp,CBGLYPHRAST // Increment to the next glyph
|
|
cmplw pgp,pgpLast // End of the glyph?
|
|
ble pstext_10 // No -> next glyph
|
|
add pjDstScanLine,pjDstScanLine,delta // Target address increment
|
|
addic. linecounter,linecounter,-1 // Decrement line counter
|
|
bne pstext_00 // More lines -> loop
|
|
//
|
|
pstext_30:
|
|
#if (! FULLCACHE)
|
|
lwz cacheControl,CONTROL(textparam) // Get cache control parameter
|
|
andis. w,cacheControl,TFLUSHBIT // Needed to flush target cache?
|
|
beq pstext_90 // No -> end process
|
|
pstext_35:
|
|
subf pjDstScanLine,delta,pjDstScanLine // pjDstScanLine <- top of the last drawn line
|
|
lwz w,DEST(textparam)
|
|
lwz w1,WIDTH(textparam)
|
|
add startCache,pjDstScanLine,w // startCache <- first byte address of the last lien
|
|
add endCache,startCache,w1 // endCache <- one byte after last byte
|
|
addi endCache,endCache,-1 // endCache <- last byte address
|
|
rlwinm startCache,startCache,0,0,26 // startCache <- 32 byte aligned start address
|
|
rlwinm endCache,endCache,0,0,26 // endCache <- 32 byte aligned start address
|
|
lwz w,MAXLFL(textparam) // Get number of lines to flush
|
|
mtctr w // CTR <- number of lines drawn
|
|
// subf w,startCache,endCache // w <- end - start
|
|
// srawi w,w,5
|
|
// addi w,w,1 // w <- number of cache entries flushed per line
|
|
// lwz cacheControl,L1CACHE(textparam) // cacheControl <- maximum number of cache entries to be flushed
|
|
// I decided to flush all drawn lines for safety because in case there are gaps (non touched cached lines)
|
|
// between characters, flushing L1CACHE entry may not be enough.
|
|
pstext_40:
|
|
mr w1,startCache
|
|
pstext_50:
|
|
dcbf 0,w1
|
|
addi w1,w1,32
|
|
cmplw w1,endCache
|
|
ble pstext_50
|
|
// subf. cacheControl,w,cacheControl // Flushed enough number of cache lines?
|
|
// blt- pstext_90 // Yes -> flush done
|
|
subf startCache,delta,startCache // Update cache start
|
|
subf endCache,delta,endCache // and end cache address
|
|
bdnz pstext_40
|
|
#endif (! FULLCACHE)
|
|
pstext_90:
|
|
//
|
|
// Restore non-volatile registers
|
|
//
|
|
lwz r14,SLACK2(sp)
|
|
lwz r15,SLACK3(sp)
|
|
lwz r16,SLACK4(sp)
|
|
lwz r17,SLACK5(sp)
|
|
mtlr r31
|
|
lwz r31,SLACK1(sp)
|
|
//
|
|
pstext_exit:
|
|
SPECIAL_EXIT(PSTextOut)
|
|
//
|
|
//*************************************************************************************************
|
|
SPECIAL_ENTRY(PSTextOut2)
|
|
//
|
|
// Input Parameters:
|
|
// r3: The pointer to the parameter structure as follows.
|
|
// TARGET [00] : Target address (top of the line address)
|
|
// DEST [04] : Destance from the lop of the line to the first byte to be drawn
|
|
// WIDTH [08] : Byte width to be drawn in total
|
|
// LINES [12] : Number of lines to be drawn
|
|
// TDELTA [16] : Target line increments byte per line
|
|
// CTABLE [20] : Color table to use
|
|
// MTABLE [24] : Mask table to use for transparent text
|
|
// FstPGP [28] : Pointer to the GLYPHRAST
|
|
// LastPGP [32] : Pointer to the last GLYPHRAST
|
|
// FENTRY [36] : Font fetch entry point (verying for 1~4 bytes font)
|
|
// L1CACHE [40] : Maximum number of cache lines to flush
|
|
// CONTROL [44] : Operation control flag
|
|
// bit 1 (TFLUSHBIT): Target Flush flag 0:No Flush, 1:Flush
|
|
// not used for now (bit 2 (TTOUCHBIT): Target touch using "dcbz" 0:No Touch, 1:Touch)
|
|
// CHARINC [48] : Not used for PS
|
|
// SAVE1 [52] : Register save area 1
|
|
// SAVE2 [56] : Register save area 2
|
|
// SAVE3 [60] : Register save area 3
|
|
// SAVE4 [64] : Register save area 4
|
|
// SAVE5 [68] : Register save area 5
|
|
// SAVE6 [72] : Register save area 6
|
|
// SAVE7 [76] : Register save area 7
|
|
// SAVE8 [80] : Register save area 8
|
|
//
|
|
// Register usage:
|
|
// r0: mask (work register for transparent text)
|
|
// r4: w (Work register)
|
|
// r5: w1 (Work register)
|
|
// r6: pgpFirst (first pgp address) -> used for cacheControl (cache control word & max cache entry number) later
|
|
// r7: pgp (Pointer to pgp) -> used for start cache flush address later
|
|
// r8: mpnibbleulMask (mask pattern for transparent text)
|
|
// r9: mpnibbleulDraw (Pointer to the color table) -> used for end cache flush address later
|
|
// r10: linecounter (number of lines to process)
|
|
// r11: pjDst (Pointer to the target)
|
|
// r12: ulBits (Loaded font data)
|
|
// r14: pjBits (Ponter to the font pattern)
|
|
// r15: delta (Target byte increments between lines)
|
|
// r16: pgpLast (Pointer to the last pgp)
|
|
// r17: pjDstScanLine (Top of the line address (incrementing))
|
|
// CTR: Used for holding font fetch entry (1~4 bytes)
|
|
//
|
|
|
|
// WARNING: Definitiion of GLYPHRAST structures shared with text.c
|
|
// typedef struct {
|
|
// USHORT cjBits;
|
|
// USHORT djDst;
|
|
// USHORT startline; -- Not used
|
|
// USHORT endline; -- Not used
|
|
// PBYTE pprocFirstText;
|
|
// PBYTE pjBits;
|
|
// } GLYPHRAST;
|
|
//
|
|
//
|
|
stw r31,SLACK1(sp)
|
|
mflr r31
|
|
//
|
|
// Save non-volatile registers
|
|
//
|
|
stw r14,SLACK2(sp)
|
|
stw r15,SLACK3(sp)
|
|
stw r16,SLACK4(sp)
|
|
stw r17,SLACK5(sp)
|
|
//
|
|
PROLOGUE_END(PSTextOut2)
|
|
//
|
|
lwz linecounter,LINES(textparam) // Get number of lines to draw
|
|
and. linecounter,linecounter,linecounter // Any lines to draw?
|
|
beq pstext2_exit // No -> just exit
|
|
//
|
|
lwz pgpFirst,FstPGP(textparam) // Get first PGP address
|
|
lwz pjDstScanLine,TARGET(textparam) // Get top of the line address
|
|
lwz mpnibbleulDraw,CTABLE(textparam) // Get color table address
|
|
lwz mpnibbleulMask,MTABLE(textparam) // Get mask table address (used only for transparent text)
|
|
lwz pgpLast,LastPGP(textparam) // Get last pgp address
|
|
lwz delta,TDELTA(textparam) // Target byte increment between lines
|
|
lwz w,FENTRY(textparam)
|
|
mtctr w // CTR <- font fetch entry (1~4 bytes)
|
|
pstext2_00: // Start of line loop
|
|
mr pgp,pgpFirst // Get first pgp address
|
|
pstext2_10: // Start of glyph loop
|
|
lwz pjBits,GLYPHRAST_pjBits(pgp)
|
|
bctr // Draw the line
|
|
//
|
|
ps4bytefont2:
|
|
lbz ulBits,3(pjBits) // Load font pattern (byte-3)
|
|
ps3bytefont2:
|
|
lbz w1,2(pjBits) // Load font pattern (byte-2)
|
|
rlwimi ulBits,w1,8,16,23 // Make concatinated font image
|
|
ps2bytefont2:
|
|
lbz w1,1(pjBits) // Load font pattern (byte-1)
|
|
rlwimi ulBits,w1,16,8,15 // Make concatinated font image
|
|
ps1bytefont2:
|
|
lbz w1,0(pjBits) // Load font pattern (byte-0)
|
|
rlwimi ulBits,w1,24,0,7 // Make concatinated font image
|
|
lwz w,GLYPHRAST_pprocFirstText(pgp) // Get subroutine address to call for this glyph
|
|
mtlr w // LR <- Subroutine address to call
|
|
lhz w,GLYPHRAST_cjBits(pgp) // Load cjBits (increment byte of fonts)
|
|
lhz w1,GLYPHRAST_djDst(pgp) // Load djDst (Distance from the top of the line)
|
|
add pjDst,pjDstScanLine,w1 // pjDst <- Target address to draw the glyph
|
|
add pjBits,w,pjBits // Update font pettern address
|
|
stw pjBits,GLYPHRAST_pjBits(pgp) // And save it in the GLYPHRAST structure
|
|
#if SAVEDCBZ
|
|
addi w, pjDst, 31 // w <- address to "dcbz" when necessary
|
|
#endif
|
|
blrl // Draw curent line of the current glyph
|
|
addi pgp,pgp,CBGLYPHRAST // Increment to the next glyph
|
|
cmplw pgp,pgpLast // End of the glyph?
|
|
ble pstext2_10 // No -> next glyph
|
|
add pjDstScanLine,pjDstScanLine,delta // Target address increment
|
|
addic. linecounter,linecounter,-1 // Decrement line counter
|
|
bne pstext2_00 // More lines -> loop
|
|
//
|
|
b pstext_30
|
|
//
|
|
pstext2_exit:
|
|
SPECIAL_EXIT(PSTextOut2)
|
|
//
|
|
//
|
|
//*************************************************************************************************
|
|
SPECIAL_ENTRY(FixedTextOut)
|
|
//
|
|
// Input Parameters:
|
|
// r3: The pointer to the parameter structure as follows.
|
|
// TARGET [00] : Target address (top of the line address)
|
|
// DEST [04] : Destance from the lop of the line to the first byte to be drawn
|
|
// WIDTH [08] : Byte width to be drawn in total
|
|
// LINES [12] : Number of lines to be drawn
|
|
// TDELTA [16] : Target line increments byte per line
|
|
// CTABLE [20] : Color table to use
|
|
// MTABLE [24] : Mask table to use for transparent text
|
|
// FstPGP [28] : Pointer to the GLYPHRAST
|
|
// LastPGP [32] : Pointer to the last GLYPHRAST
|
|
// FENTRY [36] : Font fetch entry point (verying for 1~4 bytes font)
|
|
// L1CACHE [40] : Maximum number of cache lines to flush
|
|
// CONTROL [44] : Operation control flag
|
|
// bit 1 (TFLUSHBIT): Target Flush flag 0:No Flush, 1:Flush
|
|
// not used for now (bit 2 (TTOUCHBIT): Target touch using "dcbz" 0:No Touch, 1:Touch)
|
|
// CHARINC [48] : Byte increment per character for target address space
|
|
// SAVE1 [52] : Register save area 1
|
|
// SAVE2 [56] : Register save area 2
|
|
// SAVE3 [60] : Register save area 3
|
|
// SAVE4 [64] : Register save area 4
|
|
// SAVE5 [68] : Register save area 5
|
|
// SAVE6 [72] : Register save area 6
|
|
// SAVE7 [76] : Register save area 7
|
|
// SAVE8 [80] : Register save area 8
|
|
//
|
|
// Register usage:
|
|
// r0: mask (work register for transparent text)
|
|
// r4: w (Work register)
|
|
// r5: w1 (Work register)
|
|
// r6: pgpFirst (first pgp address) -> used for cacheControl (max cache entry number) later
|
|
// r7: pgp (Pointer to pgp) -> used for start cache flush address later
|
|
// r8: mpnibbleulMask (mask pattern for transparent text)
|
|
// r9: mpnibbleulDraw (Pointer to the color table) -> used for end cache flush address later
|
|
// r10: linecounter (number of lines to process)
|
|
// r11: pjDst (Pointer to the target)
|
|
// r12: ulBits (Loaded font data)
|
|
// r14: pjBits (Ponter to the font pattern)
|
|
// r15: delta (Target byte increments between lines)
|
|
// r16: pgpLast (Pointer to the last pgp)
|
|
// r17: pjDstScanLine (Start address to draw twxt - unlike PS case, it's not top of the line (incrementing))
|
|
// r18: cjBits (byte width for each font fixed value)
|
|
// r19: ulCharInc (byte increment for each glyph on target address space)
|
|
// r20: fetchEntry (font pattern fetch entry point (1~4 bytes))
|
|
// CTR: Used for holding procedure dispatch entry
|
|
//
|
|
|
|
// Register defs
|
|
|
|
#define cjBits r18
|
|
#define ulCharInc r19
|
|
#define fetchEntry r20
|
|
|
|
// WARNING: Definitiion of GLYPHRAST structures shared with text.c
|
|
// typedef struct {
|
|
// USHORT cjBits; -- valid only in the first glyph
|
|
// USHORT djDst; -- valid only in the first glyph
|
|
// USHORT startline; -- not used for fixed pitch font
|
|
// USHORT endline; -- not used for fixed pitch font
|
|
// PBYTE pprocFirstText;
|
|
// PBYTE pjBits;
|
|
// } GLYPHRAST;
|
|
//
|
|
stw r31,SLACK1(sp)
|
|
mflr r31
|
|
//
|
|
// Save non-volatile registers
|
|
//
|
|
stw r14,SLACK2(sp)
|
|
stw r15,SLACK3(sp)
|
|
stw r16,SLACK4(sp)
|
|
stw r17,SLACK5(sp)
|
|
stw r18,SLACK6(sp)
|
|
stw r19,SLACK7(sp)
|
|
stw r20,SLACK8(sp)
|
|
//
|
|
PROLOGUE_END(FixedTextOut)
|
|
//
|
|
lwz linecounter,LINES(textparam) // Get number of lines to draw
|
|
and. linecounter,linecounter,linecounter // Any lines to draw?
|
|
beq fixedtext_exit // No -> just exit
|
|
//
|
|
lwz pgpFirst,FstPGP(textparam) // Get first PGP address
|
|
lwz pjDstScanLine,TARGET(textparam) // Get top of the line address
|
|
lwz mpnibbleulDraw,CTABLE(textparam) // Get color table address
|
|
lwz mpnibbleulMask,MTABLE(textparam) // Get mask table address (used only for transparent text)
|
|
lwz pgpLast,LastPGP(textparam) // Get last pgp address
|
|
lwz delta,TDELTA(textparam) // Target byte increment between lines
|
|
lwz ulCharInc,CHARINC(textparam) // Load byte increment for target space
|
|
lhz cjBits,GLYPHRAST_cjBits(pgpFirst) // Load cjBits (increment byte of fonts)
|
|
lwz fetchEntry,FENTRY(textparam) // Load font pattern fetch entry point
|
|
lhz w,GLYPHRAST_djDst(pgpFirst) // Load djDst (Distance from the top of the line)
|
|
add pjDstScanLine,pjDstScanLine,w // pjDst <- Target address to draw the glyph
|
|
subf pjDstScanLine,ulCharInc,pjDstScanLine // decrement by ulCharInc for pre-adjustment
|
|
fixedtext_00: // Start of line loop
|
|
mtlr fetchEntry // LR <- font fetch entry (1~4 bytes)
|
|
mr pgp,pgpFirst // Get first pgp address
|
|
lwz pjBits,GLYPHRAST_pjBits(pgp) // Load pjBits of the first glyph
|
|
mr pjDst,pjDstScanLine // pjDst <- drawing start address of the line
|
|
blr
|
|
fixed4bytefont:
|
|
lbz ulBits,3(pjBits) // Load font pattern (byte-3)
|
|
fixed3bytefont:
|
|
lbz w1,2(pjBits) // Load font pattern (byte-2)
|
|
rlwimi ulBits,w1,8,16,23 // Make concatinated font image
|
|
fixed2bytefont:
|
|
lbz w1,1(pjBits) // Load font pattern (byte-1)
|
|
rlwimi ulBits,w1,16,8,15 // Make concatinated font image
|
|
fixed1bytefont:
|
|
lbz w1,0(pjBits) // Load font pattern (byte-0)
|
|
rlwimi ulBits,w1,24,0,7 // Make concatinated font image
|
|
lwz w,GLYPHRAST_pprocFirstText(pgp) // Get subroutine address to call for this glyph
|
|
mtctr w // CTR <- Subroutine address to call
|
|
add pjBits,cjBits,pjBits // Update font pettern address
|
|
stw pjBits,GLYPHRAST_pjBits(pgp) // And save it in the GLYPHRAST structure
|
|
add pjDst,ulCharInc,pjDst // Update pjDst (by incrementing cjBits)
|
|
addi pgp,pgp,CBGLYPHRAST // Increment to the next glyph
|
|
lwz pjBits,GLYPHRAST_pjBits(pgp) // Load pjBits of the next glyph
|
|
#if SAVEDCBZ
|
|
addi w, pjDst, 31 // w <- address to "dcbz" when necessary
|
|
#endif
|
|
cmplw pgp,pgpLast // End of the glyph?
|
|
blectr+ // No -> draw glyph
|
|
bctrl // Yes -> draw glyph & come back here
|
|
add pjDstScanLine,pjDstScanLine,delta // Target address increment
|
|
addic. linecounter,linecounter,-1 // Decrement line counter
|
|
bne fixedtext_00 // More lines -> loop
|
|
//
|
|
#if (! FULLCACHE)
|
|
lwz w,CONTROL(textparam) // Get cache control parameter
|
|
andis. w,w,TFLUSHBIT // Needed to flush target cache?
|
|
beq fixedtext_90 // No -> restore registers & exit
|
|
lhz w,GLYPHRAST_djDst(pgpFirst) // Load djDst (Distance from the top of the line)
|
|
add pjDstScanLine,ulCharInc,pjDstScanLine // Cancel the pre-adjustment
|
|
subf pjDstScanLine,w,pjDstScanLine // pjDst <- Top address of the line
|
|
lwz r18,SLACK6(sp)
|
|
lwz r19,SLACK7(sp)
|
|
lwz r20,SLACK8(sp)
|
|
b pstext_35
|
|
fixedtext_90:
|
|
#endif
|
|
//
|
|
// Restore non-volatile registers
|
|
//
|
|
lwz r14,SLACK2(sp)
|
|
lwz r15,SLACK3(sp)
|
|
lwz r16,SLACK4(sp)
|
|
lwz r17,SLACK5(sp)
|
|
lwz r18,SLACK6(sp)
|
|
lwz r19,SLACK7(sp)
|
|
lwz r20,SLACK8(sp)
|
|
mtlr r31
|
|
lwz r31,SLACK1(sp)
|
|
//
|
|
fixedtext_exit:
|
|
SPECIAL_EXIT(FixedTextOut)
|
|
//
|
|
LEAF_ENTRY(Text_Procs)
|
|
//
|
|
#define TEXT_PROC(name) \
|
|
name:
|
|
//
|
|
// Glyph action procedures for 8 BPP
|
|
//
|
|
//
|
|
// Short routines up tp 8 dots
|
|
//
|
|
TEXT_PROC(__DrawText8_1A0DCBZ)
|
|
TEXT_PROC(__DrawText8_1A1DCBZ)
|
|
TEXT_PROC(__DrawText8_1A2DCBZ)
|
|
TEXT_PROC(__DrawText8_1A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_1A0)
|
|
TEXT_PROC(__DrawText8_1A1)
|
|
TEXT_PROC(__DrawText8_1A2)
|
|
TEXT_PROC(__DrawText8_1A3)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_2A2DCBZ)
|
|
TEXT_PROC(__DrawText8_2A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_2A2)
|
|
TEXT_PROC(__DrawText8_2A0)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_2A1DCBZ)
|
|
TEXT_PROC(__DrawText8_2A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_2A1)
|
|
TEXT_PROC(__DrawText8_2A3)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
stb w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_3A2DCBZ)
|
|
TEXT_PROC(__DrawText8_3A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_3A2)
|
|
TEXT_PROC(__DrawText8_3A0)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 2(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_3A3DCBZ)
|
|
TEXT_PROC(__DrawText8_3A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_3A3)
|
|
TEXT_PROC(__DrawText8_3A1)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_4A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_4A0)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_4A3DCBZ)
|
|
TEXT_PROC(__DrawText8_4A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_4A3)
|
|
TEXT_PROC(__DrawText8_4A1)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 3(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_4A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_4A2)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
srwi w, w, 16
|
|
sth w, 2(pjDst)
|
|
blr
|
|
//
|
|
#if USESHORT8
|
|
TEXT_PROC(__DrawText8_5A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_5A0)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_5A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_5A1)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 3(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_5A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_5A2)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 2(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_5A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_5A3)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_6A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_6A0)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_6A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_6A1)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 3(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 5(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_6A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_6A2)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 2(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_6A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_6A3)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 1(pjDst)
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 5(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_7A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_7A0)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 4(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 6(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_7A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_7A1)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 3(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_7A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_7A2)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 2(pjDst)
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 6(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_7A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_7A3)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 1(pjDst)
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 5(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_8A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_8A0)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_8A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_8A1)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 3(pjDst)
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 7(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_8A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_8A2)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 2(pjDst)
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 6(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_8A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_8A3)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 1(pjDst)
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 5(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 7(pjDst)
|
|
blr
|
|
//
|
|
#endif // USESHORT8
|
|
//
|
|
TEXT_PROC(__DrawText8_31A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_31A0)
|
|
rlwinm w, ulBits, 0-0+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 28(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 30(pjDst)
|
|
b __DrawText8_28A0
|
|
//
|
|
TEXT_PROC(__DrawText8_30A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_30A0)
|
|
rlwinm w, ulBits, 0-0+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 28(pjDst)
|
|
b __DrawText8_28A0
|
|
//
|
|
TEXT_PROC(__DrawText8_29A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_29A0)
|
|
rlwinm w, ulBits, 0-0+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 28(pjDst)
|
|
b __DrawText8_28A0
|
|
//
|
|
TEXT_PROC(__DrawText8_27A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_27A0)
|
|
rlwinm w, ulBits, 32-4+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 24(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 26(pjDst)
|
|
b __DrawText8_24A0
|
|
//
|
|
TEXT_PROC(__DrawText8_26A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_26A0)
|
|
rlwinm w, ulBits, 32-4+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 24(pjDst)
|
|
b __DrawText8_24A0
|
|
//
|
|
TEXT_PROC(__DrawText8_25A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_25A0)
|
|
rlwinm w, ulBits, 32-4+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 24(pjDst)
|
|
b __DrawText8_24A0
|
|
//
|
|
TEXT_PROC(__DrawText8_23A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_23A0)
|
|
rlwinm w, ulBits, 32-8+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 20(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 22(pjDst)
|
|
b __DrawText8_20A0
|
|
//
|
|
TEXT_PROC(__DrawText8_22A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_22A0)
|
|
rlwinm w, ulBits, 32-8+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 20(pjDst)
|
|
b __DrawText8_20A0
|
|
//
|
|
TEXT_PROC(__DrawText8_21A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_21A0)
|
|
rlwinm w, ulBits, 32-8+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 20(pjDst)
|
|
b __DrawText8_20A0
|
|
//
|
|
TEXT_PROC(__DrawText8_19A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_19A0)
|
|
rlwinm w, ulBits, 32-12+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 16(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 18(pjDst)
|
|
b __DrawText8_16A0
|
|
//
|
|
TEXT_PROC(__DrawText8_18A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_18A0)
|
|
rlwinm w, ulBits, 32-12+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 16(pjDst)
|
|
b __DrawText8_16A0
|
|
//
|
|
TEXT_PROC(__DrawText8_17A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_17A0)
|
|
rlwinm w, ulBits, 32-12+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 16(pjDst)
|
|
b __DrawText8_16A0
|
|
//
|
|
TEXT_PROC(__DrawText8_15A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_15A0)
|
|
rlwinm w, ulBits, 32-16+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 12(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 14(pjDst)
|
|
b __DrawText8_12A0
|
|
//
|
|
TEXT_PROC(__DrawText8_14A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_14A0)
|
|
rlwinm w, ulBits, 32-16+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 12(pjDst)
|
|
b __DrawText8_12A0
|
|
//
|
|
TEXT_PROC(__DrawText8_13A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_13A0)
|
|
rlwinm w, ulBits, 32-16+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 12(pjDst)
|
|
b __DrawText8_12A0
|
|
//
|
|
TEXT_PROC(__DrawText8_11A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_11A0)
|
|
rlwinm w, ulBits, 32-20+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 8(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 10(pjDst)
|
|
b __DrawText8_8A0
|
|
//
|
|
TEXT_PROC(__DrawText8_10A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_10A0)
|
|
rlwinm w, ulBits, 32-20+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 8(pjDst)
|
|
b __DrawText8_8A0
|
|
//
|
|
TEXT_PROC(__DrawText8_9A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_9A0)
|
|
rlwinm w, ulBits, 32-20+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 8(pjDst)
|
|
b __DrawText8_8A0
|
|
//
|
|
#if (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawText8_7A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_7A0)
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 4(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 6(pjDst)
|
|
b __DrawText8_4A0
|
|
//
|
|
TEXT_PROC(__DrawText8_6A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_6A0)
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 4(pjDst)
|
|
b __DrawText8_4A0
|
|
//
|
|
TEXT_PROC(__DrawText8_5A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_5A0)
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 4(pjDst)
|
|
b __DrawText8_4A0
|
|
//
|
|
TEXT_PROC(__DrawText8_8A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_8A0
|
|
#endif // (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawText8_12A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_12A0
|
|
//
|
|
TEXT_PROC(__DrawText8_16A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_16A0
|
|
//
|
|
TEXT_PROC(__DrawText8_20A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_20A0
|
|
//
|
|
TEXT_PROC(__DrawText8_24A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_24A0
|
|
//
|
|
TEXT_PROC(__DrawText8_28A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_28A0
|
|
//
|
|
TEXT_PROC(__DrawText8_32A0DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
//
|
|
TEXT_PROC(__DrawText8_32A0)
|
|
rlwinm w, ulBits, 0-0+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 28(pjDst)
|
|
TEXT_PROC(__DrawText8_28A0)
|
|
rlwinm w, ulBits, 32-4+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 24(pjDst)
|
|
TEXT_PROC(__DrawText8_24A0)
|
|
rlwinm w, ulBits, 32-8+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 20(pjDst)
|
|
TEXT_PROC(__DrawText8_20A0)
|
|
rlwinm w, ulBits, 32-12+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 16(pjDst)
|
|
TEXT_PROC(__DrawText8_16A0)
|
|
rlwinm w, ulBits, 32-16+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 12(pjDst)
|
|
TEXT_PROC(__DrawText8_12A0)
|
|
rlwinm w, ulBits, 32-20+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawText8_8A0)
|
|
#endif // (! USESHORT8)
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_32A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_32A1)
|
|
rlwinm w, ulBits, 0+3+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 31(pjDst)
|
|
b __DrawText8_31A1
|
|
//
|
|
TEXT_PROC(__DrawText8_30A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_30A1)
|
|
rlwinm w, ulBits, 0-1+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 27(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 29(pjDst)
|
|
b __DrawText8_27A1
|
|
//
|
|
TEXT_PROC(__DrawText8_29A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_29A1)
|
|
rlwinm w, ulBits, 0-1+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 27(pjDst)
|
|
b __DrawText8_27A1
|
|
//
|
|
TEXT_PROC(__DrawText8_28A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_28A1)
|
|
rlwinm w, ulBits, 0-1+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 27(pjDst)
|
|
b __DrawText8_27A1
|
|
//
|
|
TEXT_PROC(__DrawText8_26A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_26A1)
|
|
rlwinm w, ulBits, 32-5+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 23(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 25(pjDst)
|
|
b __DrawText8_23A1
|
|
//
|
|
TEXT_PROC(__DrawText8_25A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_25A1)
|
|
rlwinm w, ulBits, 32-5+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 23(pjDst)
|
|
b __DrawText8_23A1
|
|
//
|
|
TEXT_PROC(__DrawText8_24A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_24A1)
|
|
rlwinm w, ulBits, 32-5+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 23(pjDst)
|
|
b __DrawText8_23A1
|
|
//
|
|
TEXT_PROC(__DrawText8_22A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_22A1)
|
|
rlwinm w, ulBits, 32-9+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 19(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 21(pjDst)
|
|
b __DrawText8_19A1
|
|
//
|
|
TEXT_PROC(__DrawText8_21A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_21A1)
|
|
rlwinm w, ulBits, 32-9+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 19(pjDst)
|
|
b __DrawText8_19A1
|
|
//
|
|
TEXT_PROC(__DrawText8_20A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_20A1)
|
|
rlwinm w, ulBits, 32-9+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 19(pjDst)
|
|
b __DrawText8_19A1
|
|
//
|
|
TEXT_PROC(__DrawText8_18A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_18A1)
|
|
rlwinm w, ulBits, 32-13+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 15(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 17(pjDst)
|
|
b __DrawText8_15A1
|
|
//
|
|
TEXT_PROC(__DrawText8_17A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_17A1)
|
|
rlwinm w, ulBits, 32-13+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 15(pjDst)
|
|
b __DrawText8_15A1
|
|
//
|
|
TEXT_PROC(__DrawText8_16A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_16A1)
|
|
rlwinm w, ulBits, 32-13+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 15(pjDst)
|
|
b __DrawText8_15A1
|
|
//
|
|
TEXT_PROC(__DrawText8_14A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_14A1)
|
|
rlwinm w, ulBits, 32-17+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 11(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 13(pjDst)
|
|
b __DrawText8_11A1
|
|
//
|
|
TEXT_PROC(__DrawText8_13A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_13A1)
|
|
rlwinm w, ulBits, 32-17+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 11(pjDst)
|
|
b __DrawText8_11A1
|
|
//
|
|
TEXT_PROC(__DrawText8_12A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_12A1)
|
|
rlwinm w, ulBits, 32-17+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 11(pjDst)
|
|
b __DrawText8_11A1
|
|
//
|
|
TEXT_PROC(__DrawText8_10A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_10A1)
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 7(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 9(pjDst)
|
|
b __DrawText8_7A1
|
|
//
|
|
TEXT_PROC(__DrawText8_9A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_9A1)
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 7(pjDst)
|
|
b __DrawText8_7A1
|
|
//
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawText8_8A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_8A1)
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 7(pjDst)
|
|
b __DrawText8_7A1
|
|
//
|
|
TEXT_PROC(__DrawText8_6A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_6A1)
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 3(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 5(pjDst)
|
|
b __DrawText8_3A1
|
|
//
|
|
TEXT_PROC(__DrawText8_5A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_5A1)
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 3(pjDst)
|
|
b __DrawText8_3A1
|
|
//
|
|
TEXT_PROC(__DrawText8_7A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_7A1
|
|
//
|
|
#endif // (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawText8_11A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_11A1
|
|
//
|
|
TEXT_PROC(__DrawText8_15A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_15A1
|
|
//
|
|
TEXT_PROC(__DrawText8_19A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_19A1
|
|
//
|
|
TEXT_PROC(__DrawText8_23A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_23A1
|
|
//
|
|
TEXT_PROC(__DrawText8_27A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_27A1
|
|
//
|
|
TEXT_PROC(__DrawText8_31A1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
//
|
|
TEXT_PROC(__DrawText8_31A1)
|
|
rlwinm w, ulBits, 0-1+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 27(pjDst)
|
|
TEXT_PROC(__DrawText8_27A1)
|
|
rlwinm w, ulBits, 32-5+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 23(pjDst)
|
|
TEXT_PROC(__DrawText8_23A1)
|
|
rlwinm w, ulBits, 32-9+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 19(pjDst)
|
|
TEXT_PROC(__DrawText8_19A1)
|
|
rlwinm w, ulBits, 32-13+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 15(pjDst)
|
|
TEXT_PROC(__DrawText8_15A1)
|
|
rlwinm w, ulBits, 32-17+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 11(pjDst)
|
|
TEXT_PROC(__DrawText8_11A1)
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 7(pjDst)
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawText8_7A1)
|
|
#endif // (! USESHORT8)
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 3(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_32A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_32A2)
|
|
rlwinm w, ulBits, 0+2+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 30(pjDst)
|
|
b __DrawText8_30A2
|
|
//
|
|
TEXT_PROC(__DrawText8_31A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_31A2)
|
|
rlwinm w, ulBits, 0+2+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 30(pjDst)
|
|
b __DrawText8_30A2
|
|
//
|
|
TEXT_PROC(__DrawText8_29A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_29A2)
|
|
rlwinm w, ulBits, 0-2+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 26(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 28(pjDst)
|
|
b __DrawText8_26A2
|
|
//
|
|
TEXT_PROC(__DrawText8_28A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_28A2)
|
|
rlwinm w, ulBits, 0-2+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 26(pjDst)
|
|
b __DrawText8_26A2
|
|
//
|
|
TEXT_PROC(__DrawText8_27A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_27A2)
|
|
rlwinm w, ulBits, 0-2+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 26(pjDst)
|
|
b __DrawText8_26A2
|
|
//
|
|
TEXT_PROC(__DrawText8_25A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_25A2)
|
|
rlwinm w, ulBits, 32-6+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 22(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 24(pjDst)
|
|
b __DrawText8_22A2
|
|
//
|
|
TEXT_PROC(__DrawText8_24A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_24A2)
|
|
rlwinm w, ulBits, 32-6+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 22(pjDst)
|
|
b __DrawText8_22A2
|
|
//
|
|
TEXT_PROC(__DrawText8_23A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_23A2)
|
|
rlwinm w, ulBits, 32-6+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 22(pjDst)
|
|
b __DrawText8_22A2
|
|
//
|
|
TEXT_PROC(__DrawText8_21A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_21A2)
|
|
rlwinm w, ulBits, 32-10+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 18(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 20(pjDst)
|
|
b __DrawText8_18A2
|
|
//
|
|
TEXT_PROC(__DrawText8_20A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_20A2)
|
|
rlwinm w, ulBits, 32-10+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 18(pjDst)
|
|
b __DrawText8_18A2
|
|
//
|
|
TEXT_PROC(__DrawText8_19A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_19A2)
|
|
rlwinm w, ulBits, 32-10+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 18(pjDst)
|
|
b __DrawText8_18A2
|
|
//
|
|
TEXT_PROC(__DrawText8_17A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_17A2)
|
|
rlwinm w, ulBits, 32-14+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 14(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 16(pjDst)
|
|
b __DrawText8_14A2
|
|
//
|
|
TEXT_PROC(__DrawText8_16A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_16A2)
|
|
rlwinm w, ulBits, 32-14+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 14(pjDst)
|
|
b __DrawText8_14A2
|
|
//
|
|
TEXT_PROC(__DrawText8_15A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_15A2)
|
|
rlwinm w, ulBits, 32-14+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 14(pjDst)
|
|
b __DrawText8_14A2
|
|
//
|
|
TEXT_PROC(__DrawText8_13A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_13A2)
|
|
rlwinm w, ulBits, 32-18+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 10(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 12(pjDst)
|
|
b __DrawText8_10A2
|
|
//
|
|
TEXT_PROC(__DrawText8_12A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_12A2)
|
|
rlwinm w, ulBits, 32-18+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 10(pjDst)
|
|
b __DrawText8_10A2
|
|
//
|
|
TEXT_PROC(__DrawText8_11A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_11A2)
|
|
rlwinm w, ulBits, 32-18+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 10(pjDst)
|
|
b __DrawText8_10A2
|
|
//
|
|
TEXT_PROC(__DrawText8_9A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_9A2)
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 6(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 8(pjDst)
|
|
b __DrawText8_6A2
|
|
//
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawText8_8A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_8A2)
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 6(pjDst)
|
|
b __DrawText8_6A2
|
|
//
|
|
TEXT_PROC(__DrawText8_7A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_7A2)
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 6(pjDst)
|
|
b __DrawText8_6A2
|
|
//
|
|
TEXT_PROC(__DrawText8_5A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_5A2)
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 2(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 4(pjDst)
|
|
b __DrawText8_2A2
|
|
//
|
|
TEXT_PROC(__DrawText8_6A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_6A2
|
|
//
|
|
#endif // (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawText8_10A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_10A2
|
|
//
|
|
TEXT_PROC(__DrawText8_14A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_14A2
|
|
//
|
|
TEXT_PROC(__DrawText8_18A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_18A2
|
|
//
|
|
TEXT_PROC(__DrawText8_22A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_22A2
|
|
//
|
|
TEXT_PROC(__DrawText8_26A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_26A2
|
|
//
|
|
TEXT_PROC(__DrawText8_30A2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
//
|
|
TEXT_PROC(__DrawText8_30A2)
|
|
rlwinm w, ulBits, 0-2+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 26(pjDst)
|
|
TEXT_PROC(__DrawText8_26A2)
|
|
rlwinm w, ulBits, 32-6+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 22(pjDst)
|
|
TEXT_PROC(__DrawText8_22A2)
|
|
rlwinm w, ulBits, 32-10+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 18(pjDst)
|
|
TEXT_PROC(__DrawText8_18A2)
|
|
rlwinm w, ulBits, 32-14+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 14(pjDst)
|
|
TEXT_PROC(__DrawText8_14A2)
|
|
rlwinm w, ulBits, 32-18+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 10(pjDst)
|
|
TEXT_PROC(__DrawText8_10A2)
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 6(pjDst)
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawText8_6A2)
|
|
#endif // (! USESHORT8)
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 2(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText8_32A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_32A3)
|
|
rlwinm w, ulBits, 0+1+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 29(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 31(pjDst)
|
|
b __DrawText8_29A3
|
|
//
|
|
TEXT_PROC(__DrawText8_31A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_31A3)
|
|
rlwinm w, ulBits, 0+1+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 29(pjDst)
|
|
b __DrawText8_29A3
|
|
//
|
|
TEXT_PROC(__DrawText8_30A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_30A3)
|
|
rlwinm w, ulBits, 0+1+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 29(pjDst)
|
|
b __DrawText8_29A3
|
|
//
|
|
TEXT_PROC(__DrawText8_28A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_28A3)
|
|
rlwinm w, ulBits, 32-3+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 25(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 27(pjDst)
|
|
b __DrawText8_25A3
|
|
//
|
|
TEXT_PROC(__DrawText8_27A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_27A3)
|
|
rlwinm w, ulBits, 32-3+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 25(pjDst)
|
|
b __DrawText8_25A3
|
|
//
|
|
TEXT_PROC(__DrawText8_26A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_26A3)
|
|
rlwinm w, ulBits, 32-3+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 25(pjDst)
|
|
b __DrawText8_25A3
|
|
//
|
|
TEXT_PROC(__DrawText8_24A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_24A3)
|
|
rlwinm w, ulBits, 32-7+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 21(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 23(pjDst)
|
|
b __DrawText8_21A3
|
|
//
|
|
TEXT_PROC(__DrawText8_23A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_23A3)
|
|
rlwinm w, ulBits, 32-7+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 21(pjDst)
|
|
b __DrawText8_21A3
|
|
//
|
|
TEXT_PROC(__DrawText8_22A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_22A3)
|
|
rlwinm w, ulBits, 32-7+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 21(pjDst)
|
|
b __DrawText8_21A3
|
|
//
|
|
TEXT_PROC(__DrawText8_20A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_20A3)
|
|
rlwinm w, ulBits, 32-11+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 17(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 19(pjDst)
|
|
b __DrawText8_17A3
|
|
//
|
|
TEXT_PROC(__DrawText8_19A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_19A3)
|
|
rlwinm w, ulBits, 32-11+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 17(pjDst)
|
|
b __DrawText8_17A3
|
|
//
|
|
TEXT_PROC(__DrawText8_18A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_18A3)
|
|
rlwinm w, ulBits, 32-11+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 17(pjDst)
|
|
b __DrawText8_17A3
|
|
//
|
|
TEXT_PROC(__DrawText8_16A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_16A3)
|
|
rlwinm w, ulBits, 32-15+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 13(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 15(pjDst)
|
|
b __DrawText8_13A3
|
|
//
|
|
TEXT_PROC(__DrawText8_15A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_15A3)
|
|
rlwinm w, ulBits, 32-15+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 13(pjDst)
|
|
b __DrawText8_13A3
|
|
//
|
|
TEXT_PROC(__DrawText8_14A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_14A3)
|
|
rlwinm w, ulBits, 32-15+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 13(pjDst)
|
|
b __DrawText8_13A3
|
|
//
|
|
TEXT_PROC(__DrawText8_12A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_12A3)
|
|
rlwinm w, ulBits, 32-19+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 9(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 11(pjDst)
|
|
b __DrawText8_9A3
|
|
//
|
|
TEXT_PROC(__DrawText8_11A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_11A3)
|
|
rlwinm w, ulBits, 32-19+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 9(pjDst)
|
|
b __DrawText8_9A3
|
|
//
|
|
TEXT_PROC(__DrawText8_10A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_10A3)
|
|
rlwinm w, ulBits, 32-19+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 9(pjDst)
|
|
b __DrawText8_9A3
|
|
//
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawText8_8A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_8A3)
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 5(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 7(pjDst)
|
|
b __DrawText8_5A3
|
|
//
|
|
TEXT_PROC(__DrawText8_7A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_7A3)
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 5(pjDst)
|
|
b __DrawText8_5A3
|
|
//
|
|
TEXT_PROC(__DrawText8_6A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText8_6A3)
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 5(pjDst)
|
|
b __DrawText8_5A3
|
|
//
|
|
TEXT_PROC(__DrawText8_5A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_5A3
|
|
//
|
|
#endif // (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawText8_9A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_9A3
|
|
//
|
|
TEXT_PROC(__DrawText8_13A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_13A3
|
|
//
|
|
TEXT_PROC(__DrawText8_17A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_17A3
|
|
//
|
|
TEXT_PROC(__DrawText8_21A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_21A3
|
|
//
|
|
TEXT_PROC(__DrawText8_25A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText8_25A3
|
|
//
|
|
TEXT_PROC(__DrawText8_29A3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
//
|
|
TEXT_PROC(__DrawText8_29A3)
|
|
rlwinm w, ulBits, 32-3+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 25(pjDst)
|
|
TEXT_PROC(__DrawText8_25A3)
|
|
rlwinm w, ulBits, 32-7+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 21(pjDst)
|
|
TEXT_PROC(__DrawText8_21A3)
|
|
rlwinm w, ulBits, 32-11+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 17(pjDst)
|
|
TEXT_PROC(__DrawText8_17A3)
|
|
rlwinm w, ulBits, 32-15+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 13(pjDst)
|
|
TEXT_PROC(__DrawText8_13A3)
|
|
rlwinm w, ulBits, 32-19+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 9(pjDst)
|
|
TEXT_PROC(__DrawText8_9A3)
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 5(pjDst)
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawText8_5A3)
|
|
#endif // (! USESHORT8)
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 1(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stb w, 0(pjDst)
|
|
blr
|
|
//
|
|
// Glyph action procedures for 16 BPP
|
|
//
|
|
#if USESHORT16
|
|
TEXT_PROC(__DrawText16_2UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_2U)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
srwi w, w, 16
|
|
sth w, 2(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText16_4UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_4U)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 2(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 6(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText16_6UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_6U)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 2(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 6(pjDst)
|
|
rlwinm w, ulBits, 32-25+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 10(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText16_8UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_8U)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 2(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 6(pjDst)
|
|
rlwinm w, ulBits, 32-25+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 10(pjDst)
|
|
rlwinm w, ulBits, 32-23+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 14(pjDst)
|
|
blr
|
|
#else // USESHORT16
|
|
TEXT_PROC(__DrawText16_2UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_2U)
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 2(pjDst)
|
|
b __DrawText16_1U
|
|
//
|
|
TEXT_PROC(__DrawText16_4UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_4U)
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 6(pjDst)
|
|
b __DrawText16_3U
|
|
//
|
|
TEXT_PROC(__DrawText16_6UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_6U)
|
|
rlwinm w, ulBits, 32-25+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 10(pjDst)
|
|
b __DrawText16_5U
|
|
//
|
|
TEXT_PROC(__DrawText16_8UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_8U)
|
|
rlwinm w, ulBits, 32-23+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 14(pjDst)
|
|
b __DrawText16_7U
|
|
#endif // USESHORT16
|
|
//
|
|
TEXT_PROC(__DrawText16_10UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_10U)
|
|
rlwinm w, ulBits, 32-21+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 18(pjDst)
|
|
b __DrawText16_9U
|
|
//
|
|
TEXT_PROC(__DrawText16_12UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_12U)
|
|
rlwinm w, ulBits, 32-19+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 22(pjDst)
|
|
b __DrawText16_11U
|
|
//
|
|
TEXT_PROC(__DrawText16_14UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_14U)
|
|
rlwinm w, ulBits, 32-17+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 26(pjDst)
|
|
b __DrawText16_13U
|
|
//
|
|
TEXT_PROC(__DrawText16_16UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_16U)
|
|
rlwinm w, ulBits, 32-15+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 30(pjDst)
|
|
b __DrawText16_15U
|
|
//
|
|
// We may need one additional "dcbz" for more than 16 pixel width
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_18UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_18U)
|
|
rlwinm w, ulBits, 32-13+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 34(pjDst)
|
|
b __DrawText16_17U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_20UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_20U)
|
|
rlwinm w, ulBits, 32-11+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 38(pjDst)
|
|
b __DrawText16_19U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_22UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_22U)
|
|
rlwinm w, ulBits, 32-9+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 42(pjDst)
|
|
b __DrawText16_21U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_24UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_24U)
|
|
rlwinm w, ulBits, 32-7+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 46(pjDst)
|
|
b __DrawText16_23U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_26UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_26U)
|
|
rlwinm w, ulBits, 32-5+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 50(pjDst)
|
|
b __DrawText16_25U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_28UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_28U)
|
|
rlwinm w, ulBits, 32-3+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 54(pjDst)
|
|
b __DrawText16_27U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_30UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_30U)
|
|
rlwinm w, ulBits, 0-1+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 58(pjDst)
|
|
b __DrawText16_29U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_32UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_32U)
|
|
rlwinm w, ulBits, 0+1+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 62(pjDst)
|
|
b __DrawText16_31U
|
|
//
|
|
TEXT_PROC(__DrawText16_3UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_3U
|
|
//
|
|
TEXT_PROC(__DrawText16_5UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_5U
|
|
//
|
|
TEXT_PROC(__DrawText16_7UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_7U
|
|
//
|
|
TEXT_PROC(__DrawText16_9UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_9U
|
|
//
|
|
TEXT_PROC(__DrawText16_11UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_11U
|
|
//
|
|
TEXT_PROC(__DrawText16_13UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_13U
|
|
//
|
|
TEXT_PROC(__DrawText16_15UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_15U
|
|
//
|
|
// We may need one additional "dcbz" for more than 16 pixel width
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_17UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_17U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_19UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_19U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_21UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_21U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_23UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_23U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_25UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_25U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_27UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_27U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_29UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_29U
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_31UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
//
|
|
TEXT_PROC(__DrawText16_31U)
|
|
rlwinm w, ulBits, 0-1+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 58(pjDst)
|
|
TEXT_PROC(__DrawText16_29U)
|
|
rlwinm w, ulBits, 32-3+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 54(pjDst)
|
|
TEXT_PROC(__DrawText16_27U)
|
|
rlwinm w, ulBits, 32-5+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 50(pjDst)
|
|
TEXT_PROC(__DrawText16_25U)
|
|
rlwinm w, ulBits, 32-7+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 46(pjDst)
|
|
TEXT_PROC(__DrawText16_23U)
|
|
rlwinm w, ulBits, 32-9+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 42(pjDst)
|
|
TEXT_PROC(__DrawText16_21U)
|
|
rlwinm w, ulBits, 32-11+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 38(pjDst)
|
|
TEXT_PROC(__DrawText16_19U)
|
|
rlwinm w, ulBits, 32-13+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 34(pjDst)
|
|
TEXT_PROC(__DrawText16_17U)
|
|
rlwinm w, ulBits, 32-15+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 30(pjDst)
|
|
TEXT_PROC(__DrawText16_15U)
|
|
rlwinm w, ulBits, 32-17+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 26(pjDst)
|
|
TEXT_PROC(__DrawText16_13U)
|
|
rlwinm w, ulBits, 32-19+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 22(pjDst)
|
|
TEXT_PROC(__DrawText16_11U)
|
|
rlwinm w, ulBits, 32-21+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 18(pjDst)
|
|
TEXT_PROC(__DrawText16_9U)
|
|
rlwinm w, ulBits, 32-23+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 14(pjDst)
|
|
TEXT_PROC(__DrawText16_7U)
|
|
rlwinm w, ulBits, 32-25+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 10(pjDst)
|
|
TEXT_PROC(__DrawText16_5U)
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 6(pjDst)
|
|
TEXT_PROC(__DrawText16_3U)
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 2(pjDst)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText16_1ADCBZ)
|
|
TEXT_PROC(__DrawText16_1UDCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_1A)
|
|
TEXT_PROC(__DrawText16_1U)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 0(pjDst)
|
|
blr
|
|
//
|
|
#if USESHORT16
|
|
TEXT_PROC(__DrawText16_3ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_3A)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText16_5ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_5A)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-26+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 8(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText16_7ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_7A)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-26+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
rlwinm w, ulBits, 32-24+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 12(pjDst)
|
|
blr
|
|
//
|
|
#else // USESHORT16
|
|
TEXT_PROC(__DrawText16_3ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_3A)
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 4(pjDst)
|
|
b __DrawText16_2A
|
|
//
|
|
TEXT_PROC(__DrawText16_5ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_5A)
|
|
rlwinm w, ulBits, 32-26+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 8(pjDst)
|
|
b __DrawText16_4A
|
|
//
|
|
TEXT_PROC(__DrawText16_7ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_7A)
|
|
rlwinm w, ulBits, 32-24+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 12(pjDst)
|
|
b __DrawText16_6A
|
|
#endif // USESHORT16
|
|
//
|
|
TEXT_PROC(__DrawText16_9ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_9A)
|
|
rlwinm w, ulBits, 32-22+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 16(pjDst)
|
|
b __DrawText16_8A
|
|
//
|
|
TEXT_PROC(__DrawText16_11ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_11A)
|
|
rlwinm w, ulBits, 32-20+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 20(pjDst)
|
|
b __DrawText16_10A
|
|
//
|
|
TEXT_PROC(__DrawText16_13ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_13A)
|
|
rlwinm w, ulBits, 32-18+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 24(pjDst)
|
|
b __DrawText16_12A
|
|
//
|
|
TEXT_PROC(__DrawText16_15ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_15A)
|
|
rlwinm w, ulBits, 32-16+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 28(pjDst)
|
|
b __DrawText16_14A
|
|
//
|
|
// We may need one additional "dcbz" for more than 16 pixel width
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_17ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_17A)
|
|
rlwinm w, ulBits, 32-14+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 32(pjDst)
|
|
b __DrawText16_16A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_19ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_19A)
|
|
rlwinm w, ulBits, 32-12+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 36(pjDst)
|
|
b __DrawText16_18A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_21ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_21A)
|
|
rlwinm w, ulBits, 32-10+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 40(pjDst)
|
|
b __DrawText16_20A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_23ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_23A)
|
|
rlwinm w, ulBits, 32-8+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 44(pjDst)
|
|
b __DrawText16_22A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_25ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_25A)
|
|
rlwinm w, ulBits, 32-6+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 48(pjDst)
|
|
b __DrawText16_24A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_27ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_27A)
|
|
rlwinm w, ulBits, 32-4+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 52(pjDst)
|
|
b __DrawText16_26A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_29ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_29A)
|
|
rlwinm w, ulBits, 0-2+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 56(pjDst)
|
|
b __DrawText16_28A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_31ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_31A)
|
|
rlwinm w, ulBits, 0-0+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
sth w, 60(pjDst)
|
|
b __DrawText16_30A
|
|
//
|
|
TEXT_PROC(__DrawText16_2ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_2A
|
|
//
|
|
TEXT_PROC(__DrawText16_4ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_4A
|
|
//
|
|
TEXT_PROC(__DrawText16_6ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_6A
|
|
//
|
|
TEXT_PROC(__DrawText16_8ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_8A
|
|
//
|
|
TEXT_PROC(__DrawText16_10ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_10A
|
|
//
|
|
TEXT_PROC(__DrawText16_12ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_12A
|
|
//
|
|
TEXT_PROC(__DrawText16_14ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_14A
|
|
//
|
|
TEXT_PROC(__DrawText16_16ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_16A
|
|
//
|
|
// We may need one additional "dcbz" for more than 16 pixel width
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_18ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_18A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_20ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_20A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_22ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_22A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_24ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_24A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_26ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_26A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_28ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_28A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_30ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText16_30A
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText16_32ADCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
//
|
|
TEXT_PROC(__DrawText16_32A)
|
|
rlwinm w, ulBits, 0-0+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 60(pjDst)
|
|
TEXT_PROC(__DrawText16_30A)
|
|
rlwinm w, ulBits, 0-2+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 56(pjDst)
|
|
TEXT_PROC(__DrawText16_28A)
|
|
rlwinm w, ulBits, 32-4+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 52(pjDst)
|
|
TEXT_PROC(__DrawText16_26A)
|
|
rlwinm w, ulBits, 32-6+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 48(pjDst)
|
|
TEXT_PROC(__DrawText16_24A)
|
|
rlwinm w, ulBits, 32-8+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 44(pjDst)
|
|
TEXT_PROC(__DrawText16_22A)
|
|
rlwinm w, ulBits, 32-10+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 40(pjDst)
|
|
TEXT_PROC(__DrawText16_20A)
|
|
rlwinm w, ulBits, 32-12+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 36(pjDst)
|
|
TEXT_PROC(__DrawText16_18A)
|
|
rlwinm w, ulBits, 32-14+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 32(pjDst)
|
|
TEXT_PROC(__DrawText16_16A)
|
|
rlwinm w, ulBits, 32-16+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 28(pjDst)
|
|
TEXT_PROC(__DrawText16_14A)
|
|
rlwinm w, ulBits, 32-18+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 24(pjDst)
|
|
TEXT_PROC(__DrawText16_12A)
|
|
rlwinm w, ulBits, 32-20+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 20(pjDst)
|
|
TEXT_PROC(__DrawText16_10A)
|
|
rlwinm w, ulBits, 32-22+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 16(pjDst)
|
|
TEXT_PROC(__DrawText16_8A)
|
|
rlwinm w, ulBits, 32-24+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 12(pjDst)
|
|
TEXT_PROC(__DrawText16_6A)
|
|
rlwinm w, ulBits, 32-26+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
TEXT_PROC(__DrawText16_4A)
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
TEXT_PROC(__DrawText16_2A)
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
// Glyph action procedures for 32 BPP
|
|
//
|
|
#if USESHORT32
|
|
TEXT_PROC(__DrawText32_1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText32_2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText32_3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
rlwinm w, ulBits, 32-29+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText32_4DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
rlwinm w, ulBits, 32-28+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 12(pjDst)
|
|
rlwinm w, ulBits, 32-29+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText32_5DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
rlwinm w, ulBits, 32-27+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 16(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 12(pjDst)
|
|
rlwinm w, ulBits, 32-29+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText32_6DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
rlwinm w, ulBits, 32-26+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 20(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 16(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 12(pjDst)
|
|
rlwinm w, ulBits, 32-29+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText32_7DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
rlwinm w, ulBits, 32-25+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 24(pjDst)
|
|
rlwinm w, ulBits, 32-26+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 20(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 16(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 12(pjDst)
|
|
rlwinm w, ulBits, 32-29+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawText32_8DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
rlwinm w, ulBits, 32-24+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 28(pjDst)
|
|
rlwinm w, ulBits, 32-25+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 24(pjDst)
|
|
rlwinm w, ulBits, 32-26+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 20(pjDst)
|
|
rlwinm w, ulBits, 32-27+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 16(pjDst)
|
|
rlwinm w, ulBits, 32-28+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 12(pjDst)
|
|
rlwinm w, ulBits, 32-29+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
#else // USESHORT32
|
|
TEXT_PROC(__DrawText32_1DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_1
|
|
//
|
|
TEXT_PROC(__DrawText32_2DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_2
|
|
//
|
|
TEXT_PROC(__DrawText32_3DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_3
|
|
//
|
|
TEXT_PROC(__DrawText32_4DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_4
|
|
//
|
|
TEXT_PROC(__DrawText32_5DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_5
|
|
//
|
|
TEXT_PROC(__DrawText32_6DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_6
|
|
//
|
|
TEXT_PROC(__DrawText32_7DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_7
|
|
//
|
|
TEXT_PROC(__DrawText32_8DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_8
|
|
#endif // USESHORT32
|
|
//
|
|
// We may need one additional "dcbz" for more than 8 pixel width
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_9DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_9
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_10DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_10
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_11DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_11
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_12DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_12
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_13DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_13
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_14DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_14
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_15DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_15
|
|
//
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_16DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_16
|
|
//
|
|
// We may need two additional "dcbz" for more than 16 pixel width
|
|
//
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_17DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_17
|
|
//
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_18DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_18
|
|
//
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_19DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_19
|
|
//
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_20DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_20
|
|
//
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_21DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_21
|
|
//
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_22DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_22
|
|
//
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_23DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_23
|
|
//
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_24DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_24
|
|
//
|
|
// We may need three additional "dcbz" for more than 24 pixel width
|
|
//
|
|
addi w, pjDst, 31+96
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_25DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_25
|
|
//
|
|
addi w, pjDst, 31+96
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_26DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_26
|
|
//
|
|
addi w, pjDst, 31+96
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_27DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_27
|
|
//
|
|
addi w, pjDst, 31+96
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_28DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_28
|
|
//
|
|
addi w, pjDst, 31+96
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_29DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_29
|
|
//
|
|
addi w, pjDst, 31+96
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_30DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_30
|
|
//
|
|
addi w, pjDst, 31+96
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_31DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
b __DrawText32_31
|
|
//
|
|
addi w, pjDst, 31+96
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+64
|
|
dcbz 0, w
|
|
addi w, pjDst, 31+32
|
|
dcbz 0, w
|
|
TEXT_PROC(__DrawText32_32DCBZ)
|
|
#if (! SAVEDCBZ)
|
|
addi w, pjDst, 31
|
|
#endif
|
|
dcbz 0, w
|
|
//
|
|
TEXT_PROC(__DrawText32_32)
|
|
rlwinm w, ulBits, 0-0+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 124(pjDst)
|
|
TEXT_PROC(__DrawText32_31)
|
|
rlwinm w, ulBits, 0-1+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 120(pjDst)
|
|
TEXT_PROC(__DrawText32_30)
|
|
rlwinm w, ulBits, 0-2+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 116(pjDst)
|
|
TEXT_PROC(__DrawText32_29)
|
|
rlwinm w, ulBits, 32-3+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 112(pjDst)
|
|
TEXT_PROC(__DrawText32_28)
|
|
rlwinm w, ulBits, 32-4+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 108(pjDst)
|
|
TEXT_PROC(__DrawText32_27)
|
|
rlwinm w, ulBits, 32-5+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 104(pjDst)
|
|
TEXT_PROC(__DrawText32_26)
|
|
rlwinm w, ulBits, 32-6+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 100(pjDst)
|
|
TEXT_PROC(__DrawText32_25)
|
|
rlwinm w, ulBits, 32-7+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 96(pjDst)
|
|
TEXT_PROC(__DrawText32_24)
|
|
rlwinm w, ulBits, 32-8+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 92(pjDst)
|
|
TEXT_PROC(__DrawText32_23)
|
|
rlwinm w, ulBits, 32-9+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 88(pjDst)
|
|
TEXT_PROC(__DrawText32_22)
|
|
rlwinm w, ulBits, 32-10+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 84(pjDst)
|
|
TEXT_PROC(__DrawText32_21)
|
|
rlwinm w, ulBits, 32-11+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 80(pjDst)
|
|
TEXT_PROC(__DrawText32_20)
|
|
rlwinm w, ulBits, 32-12+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 76(pjDst)
|
|
TEXT_PROC(__DrawText32_19)
|
|
rlwinm w, ulBits, 32-13+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 72(pjDst)
|
|
TEXT_PROC(__DrawText32_18)
|
|
rlwinm w, ulBits, 32-14+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 68(pjDst)
|
|
TEXT_PROC(__DrawText32_17)
|
|
rlwinm w, ulBits, 32-15+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 64(pjDst)
|
|
TEXT_PROC(__DrawText32_16)
|
|
rlwinm w, ulBits, 32-16+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 60(pjDst)
|
|
TEXT_PROC(__DrawText32_15)
|
|
rlwinm w, ulBits, 32-17+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 56(pjDst)
|
|
TEXT_PROC(__DrawText32_14)
|
|
rlwinm w, ulBits, 32-18+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 52(pjDst)
|
|
TEXT_PROC(__DrawText32_13)
|
|
rlwinm w, ulBits, 32-19+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 48(pjDst)
|
|
TEXT_PROC(__DrawText32_12)
|
|
rlwinm w, ulBits, 32-20+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 44(pjDst)
|
|
TEXT_PROC(__DrawText32_11)
|
|
rlwinm w, ulBits, 32-21+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 40(pjDst)
|
|
TEXT_PROC(__DrawText32_10)
|
|
rlwinm w, ulBits, 32-22+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 36(pjDst)
|
|
TEXT_PROC(__DrawText32_9)
|
|
rlwinm w, ulBits, 32-23+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 32(pjDst)
|
|
TEXT_PROC(__DrawText32_8)
|
|
rlwinm w, ulBits, 32-24+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 28(pjDst)
|
|
TEXT_PROC(__DrawText32_7)
|
|
rlwinm w, ulBits, 32-25+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 24(pjDst)
|
|
TEXT_PROC(__DrawText32_6)
|
|
rlwinm w, ulBits, 32-26+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 20(pjDst)
|
|
TEXT_PROC(__DrawText32_5)
|
|
rlwinm w, ulBits, 32-27+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 16(pjDst)
|
|
TEXT_PROC(__DrawText32_4)
|
|
rlwinm w, ulBits, 32-28+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 12(pjDst)
|
|
TEXT_PROC(__DrawText32_3)
|
|
rlwinm w, ulBits, 32-29+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 8(pjDst)
|
|
TEXT_PROC(__DrawText32_2)
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 4(pjDst)
|
|
TEXT_PROC(__DrawText32_1)
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
lwzx w, mpnibbleulDraw, w
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
// Glyph action procedures for 8 BPP transparent text
|
|
//
|
|
//
|
|
// Short routines up tp 8 dots
|
|
//
|
|
TEXT_PROC(__DrawTransText8_1A0)
|
|
TEXT_PROC(__DrawTransText8_1A1)
|
|
TEXT_PROC(__DrawTransText8_1A2)
|
|
TEXT_PROC(__DrawTransText8_1A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_2A2)
|
|
TEXT_PROC(__DrawTransText8_2A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_2A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, -1(pjDst)
|
|
srwi w1, w1, 8
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
stb w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_2A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lbz mask, 1(pjDst)
|
|
rlwimi w1, mask, 8, 16, 23
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
stb w, 1(pjDst)
|
|
blr
|
|
|
|
//
|
|
TEXT_PROC(__DrawTransText8_3A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 2(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_3A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 0(pjDst)
|
|
lbz mask, 2(pjDst)
|
|
rlwimi w1, mask, 16, 8, 15
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 2(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_3A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, -1(pjDst)
|
|
srwi w1, w1, 8
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_3A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lhz mask, 1(pjDst)
|
|
rlwimi w1, mask, 8, 8, 23
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_4A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_4A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, -1(pjDst)
|
|
srwi w1, w1, 8
|
|
lbz mask, 3(pjDst)
|
|
rlwimi w1, mask, 24, 0, 7
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 3(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_4A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lwz mask, 1(pjDst)
|
|
rlwimi w1, mask, 8, 0, 23
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 3(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_4A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 0(pjDst)
|
|
lhz mask, 2(pjDst)
|
|
rlwimi w1, mask, 16, 0, 15
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
srwi w, w, 16
|
|
sth w, 2(pjDst)
|
|
blr
|
|
//
|
|
#if USESHORT8
|
|
TEXT_PROC(__DrawTransText8_5A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_01
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
skip8_01:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-24+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_5A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_02
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, -1(pjDst)
|
|
srwi w1, w1, 8
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
skip8_02:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-25+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 3(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 3(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_5A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_03
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
skip8_03:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-26+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 2(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_5A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_04
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
skip8_04:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-27+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 1(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_6A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_05
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
skip8_05:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-24+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_6A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_06
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, -1(pjDst)
|
|
srwi w1, w1, 8
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
skip8_06:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-25+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 3(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 3(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 5(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_6A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_07
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
skip8_07:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-26+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 2(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_6A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_08
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
skip8_08:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-27+2, 26, 29
|
|
beq skip8_09
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 1(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 1(pjDst)
|
|
skip8_09:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-23+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 5(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 5(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_7A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_10
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
skip8_10:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-24+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 4(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 6(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_7A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_11
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, -1(pjDst)
|
|
srwi w1, w1, 8
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
skip8_11:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-25+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 3(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 3(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_7A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_12
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
skip8_12:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-26+2, 26, 29
|
|
beq skip8_13
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 2(pjDst)
|
|
skip8_13:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-22+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 6(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_7A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_14
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
skip8_14:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-27+2, 26, 29
|
|
beq skip8_15
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 1(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 1(pjDst)
|
|
skip8_15:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-23+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 5(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 5(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_8A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_16
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
skip8_16:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-24+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_8A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_17
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, -1(pjDst)
|
|
srwi w1, w1, 8
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
skip8_17:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-25+2, 26, 29
|
|
beq skip8_18
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 3(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 3(pjDst)
|
|
skip8_18:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-21+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 7(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 7(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_8A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_19
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
skip8_19:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-26+2, 26, 29
|
|
beq skip8_20
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 2(pjDst)
|
|
skip8_20:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-22+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 6(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_8A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beq skip8_21
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
skip8_21:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-27+2, 26, 29
|
|
beq skip8_22
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 1(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 1(pjDst)
|
|
skip8_22:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-23+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 5(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 5(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 7(pjDst)
|
|
blr
|
|
//
|
|
#endif // USESHORT8
|
|
//
|
|
TEXT_PROC(__DrawTransText8_31A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-0+2, 26, 29
|
|
beq __DrawTransText8_28A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-0+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 28(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 28(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 30(pjDst)
|
|
b __DrawTransText8_28A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_30A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-0+2, 26, 29
|
|
beq __DrawTransText8_28A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-0+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 28(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 28(pjDst)
|
|
b __DrawTransText8_28A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_29A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-0+2, 26, 29
|
|
beq __DrawTransText8_28A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-0+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 28(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 28(pjDst)
|
|
b __DrawTransText8_28A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_27A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-4+2, 26, 29
|
|
beq __DrawTransText8_24A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-4+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 24(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 24(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 26(pjDst)
|
|
b __DrawTransText8_24A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_26A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-4+2, 26, 29
|
|
beq __DrawTransText8_24A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-4+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 24(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 24(pjDst)
|
|
b __DrawTransText8_24A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_25A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-4+2, 26, 29
|
|
beq __DrawTransText8_24A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-4+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 24(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 24(pjDst)
|
|
b __DrawTransText8_24A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_23A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-8+2, 26, 29
|
|
beq __DrawTransText8_20A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-8+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 20(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 20(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 22(pjDst)
|
|
b __DrawTransText8_20A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_22A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-8+2, 26, 29
|
|
beq __DrawTransText8_20A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-8+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 20(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 20(pjDst)
|
|
b __DrawTransText8_20A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_21A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-8+2, 26, 29
|
|
beq __DrawTransText8_20A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-8+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 20(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 20(pjDst)
|
|
b __DrawTransText8_20A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_19A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-12+2, 26, 29
|
|
beq __DrawTransText8_16A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-12+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 16(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 16(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 18(pjDst)
|
|
b __DrawTransText8_16A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_18A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-12+2, 26, 29
|
|
beq __DrawTransText8_16A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-12+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 16(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 16(pjDst)
|
|
b __DrawTransText8_16A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_17A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-12+2, 26, 29
|
|
beq __DrawTransText8_16A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-12+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 16(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 16(pjDst)
|
|
b __DrawTransText8_16A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_15A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-16+2, 26, 29
|
|
beq __DrawTransText8_12A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-16+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 12(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 12(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 14(pjDst)
|
|
b __DrawTransText8_12A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_14A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-16+2, 26, 29
|
|
beq __DrawTransText8_12A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-16+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 12(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 12(pjDst)
|
|
b __DrawTransText8_12A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_13A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-16+2, 26, 29
|
|
beq __DrawTransText8_12A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-16+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 12(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 12(pjDst)
|
|
b __DrawTransText8_12A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_11A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-20+2, 26, 29
|
|
beq __DrawTransText8_8A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-20+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 8(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 10(pjDst)
|
|
b __DrawTransText8_8A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_10A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-20+2, 26, 29
|
|
beq __DrawTransText8_8A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-20+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 8(pjDst)
|
|
b __DrawTransText8_8A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_9A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-20+2, 26, 29
|
|
beq __DrawTransText8_8A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-20+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 8(pjDst)
|
|
b __DrawTransText8_8A0
|
|
//
|
|
#if (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawTransText8_7A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-24+2, 26, 29
|
|
beq __DrawTransText8_4A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 4(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 6(pjDst)
|
|
b __DrawTransText8_4A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_6A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-24+2, 26, 29
|
|
beq __DrawTransText8_4A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 4(pjDst)
|
|
b __DrawTransText8_4A0
|
|
//
|
|
TEXT_PROC(__DrawTransText8_5A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-24+2, 26, 29
|
|
beq __DrawTransText8_4A0
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 4(pjDst)
|
|
b __DrawTransText8_4A0
|
|
//
|
|
#endif // (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawTransText8_32A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-0+2, 26, 29
|
|
beq skip8_23
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-0+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 28(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 28(pjDst)
|
|
skip8_23:
|
|
TEXT_PROC(__DrawTransText8_28A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-4+2, 26, 29
|
|
beq skip8_24
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-4+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 24(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 24(pjDst)
|
|
skip8_24:
|
|
TEXT_PROC(__DrawTransText8_24A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-8+2, 26, 29
|
|
beq skip8_25
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-8+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 20(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 20(pjDst)
|
|
skip8_25:
|
|
TEXT_PROC(__DrawTransText8_20A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-12+2, 26, 29
|
|
beq skip8_26
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-12+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 16(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 16(pjDst)
|
|
skip8_26:
|
|
TEXT_PROC(__DrawTransText8_16A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-16+2, 26, 29
|
|
beq skip8_27
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-16+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 12(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 12(pjDst)
|
|
skip8_27:
|
|
TEXT_PROC(__DrawTransText8_12A0)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-20+2, 26, 29
|
|
beq skip8_28
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-20+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 8(pjDst)
|
|
skip8_28:
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawTransText8_8A0)
|
|
#endif // (! USESHORT8)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-24+2, 26, 29
|
|
beq skip8_29
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-24+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 4(pjDst)
|
|
skip8_29:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_32A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0+3+2, 26, 29
|
|
beq __DrawTransText8_31A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0+3+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 31(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 31(pjDst)
|
|
b __DrawTransText8_31A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_30A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-1+2, 26, 29
|
|
beq __DrawTransText8_27A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-1+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 27(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 27(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 29(pjDst)
|
|
b __DrawTransText8_27A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_29A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-1+2, 26, 29
|
|
beq __DrawTransText8_27A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-1+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 27(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 27(pjDst)
|
|
b __DrawTransText8_27A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_28A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-1+2, 26, 29
|
|
beq __DrawTransText8_27A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-1+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 27(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 27(pjDst)
|
|
b __DrawTransText8_27A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_26A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-5+2, 26, 29
|
|
beq __DrawTransText8_23A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-5+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 23(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 23(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 25(pjDst)
|
|
b __DrawTransText8_23A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_25A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-5+2, 26, 29
|
|
beq __DrawTransText8_23A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-5+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 23(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 23(pjDst)
|
|
b __DrawTransText8_23A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_24A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-5+2, 26, 29
|
|
beq __DrawTransText8_23A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-5+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 23(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 23(pjDst)
|
|
b __DrawTransText8_23A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_22A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-9+2, 26, 29
|
|
beq __DrawTransText8_19A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-9+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 19(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 19(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 21(pjDst)
|
|
b __DrawTransText8_19A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_21A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-9+2, 26, 29
|
|
beq __DrawTransText8_19A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-9+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 19(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 19(pjDst)
|
|
b __DrawTransText8_19A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_20A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-9+2, 26, 29
|
|
beq __DrawTransText8_19A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-9+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 19(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 19(pjDst)
|
|
b __DrawTransText8_19A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_18A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-13+2, 26, 29
|
|
beq __DrawTransText8_15A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-13+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 15(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 15(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 17(pjDst)
|
|
b __DrawTransText8_15A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_17A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-13+2, 26, 29
|
|
beq __DrawTransText8_15A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-13+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 15(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 15(pjDst)
|
|
b __DrawTransText8_15A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_16A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-13+2, 26, 29
|
|
beq __DrawTransText8_15A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-13+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 15(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 15(pjDst)
|
|
b __DrawTransText8_15A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_14A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-17+2, 26, 29
|
|
beq __DrawTransText8_11A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-17+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 11(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 11(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 13(pjDst)
|
|
b __DrawTransText8_11A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_13A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-17+2, 26, 29
|
|
beq __DrawTransText8_11A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-17+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 11(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 11(pjDst)
|
|
b __DrawTransText8_11A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_12A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-17+2, 26, 29
|
|
beq __DrawTransText8_11A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-17+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 11(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 11(pjDst)
|
|
b __DrawTransText8_11A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_10A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-21+2, 26, 29
|
|
beq __DrawTransText8_7A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 7(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 7(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 9(pjDst)
|
|
b __DrawTransText8_7A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_9A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-21+2, 26, 29
|
|
beq __DrawTransText8_7A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 7(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 7(pjDst)
|
|
b __DrawTransText8_7A1
|
|
//
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawTransText8_8A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-21+2, 26, 29
|
|
beq __DrawTransText8_7A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 7(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 7(pjDst)
|
|
b __DrawTransText8_7A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_6A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-25+2, 26, 29
|
|
beq __DrawTransText8_3A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 3(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 3(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 5(pjDst)
|
|
b __DrawTransText8_3A1
|
|
//
|
|
TEXT_PROC(__DrawTransText8_5A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-25+2, 26, 29
|
|
beq __DrawTransText8_3A1
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 3(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 3(pjDst)
|
|
b __DrawTransText8_3A1
|
|
//
|
|
#endif // (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawTransText8_31A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-1+2, 26, 29
|
|
beq skip8_30
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-1+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 27(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 27(pjDst)
|
|
skip8_30:
|
|
TEXT_PROC(__DrawTransText8_27A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-5+2, 26, 29
|
|
beq skip8_31
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-5+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 23(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 23(pjDst)
|
|
skip8_31:
|
|
TEXT_PROC(__DrawTransText8_23A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-9+2, 26, 29
|
|
beq skip8_32
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-9+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 19(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 19(pjDst)
|
|
skip8_32:
|
|
TEXT_PROC(__DrawTransText8_19A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-13+2, 26, 29
|
|
beq skip8_33
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-13+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 15(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 15(pjDst)
|
|
skip8_33:
|
|
TEXT_PROC(__DrawTransText8_15A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-17+2, 26, 29
|
|
beq skip8_34
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-17+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 11(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 11(pjDst)
|
|
skip8_34:
|
|
TEXT_PROC(__DrawTransText8_11A1)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-21+2, 26, 29
|
|
beq skip8_35
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-21+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 7(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 7(pjDst)
|
|
skip8_35:
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawTransText8_7A1)
|
|
#endif // (! USESHORT8)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-25+2, 26, 29
|
|
beq skip8_36
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-25+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 3(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 3(pjDst)
|
|
skip8_36:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, -1(pjDst)
|
|
srwi w1, w1, 8
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
srwi w, w, 8
|
|
sth w, 1(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_32A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0+2+2, 26, 29
|
|
beq __DrawTransText8_30A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0+2+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 30(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 30(pjDst)
|
|
b __DrawTransText8_30A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_31A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0+2+2, 26, 29
|
|
beq __DrawTransText8_30A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0+2+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 30(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 30(pjDst)
|
|
b __DrawTransText8_30A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_29A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-2+2, 26, 29
|
|
beq __DrawTransText8_26A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-2+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 26(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 26(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 28(pjDst)
|
|
b __DrawTransText8_26A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_28A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-2+2, 26, 29
|
|
beq __DrawTransText8_26A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-2+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 26(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 26(pjDst)
|
|
b __DrawTransText8_26A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_27A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-2+2, 26, 29
|
|
beq __DrawTransText8_26A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-2+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 26(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 26(pjDst)
|
|
b __DrawTransText8_26A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_25A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-6+2, 26, 29
|
|
beq __DrawTransText8_22A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-6+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 22(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 22(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 24(pjDst)
|
|
b __DrawTransText8_22A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_24A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-6+2, 26, 29
|
|
beq __DrawTransText8_22A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-6+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 22(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 22(pjDst)
|
|
b __DrawTransText8_22A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_23A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-6+2, 26, 29
|
|
beq __DrawTransText8_22A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-6+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 22(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 22(pjDst)
|
|
b __DrawTransText8_22A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_21A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-10+2, 26, 29
|
|
beq __DrawTransText8_18A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-10+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 18(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 18(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 20(pjDst)
|
|
b __DrawTransText8_18A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_20A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-10+2, 26, 29
|
|
beq __DrawTransText8_18A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-10+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 18(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 18(pjDst)
|
|
b __DrawTransText8_18A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_19A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-10+2, 26, 29
|
|
beq __DrawTransText8_18A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-10+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 18(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 18(pjDst)
|
|
b __DrawTransText8_18A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_17A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-14+2, 26, 29
|
|
beq __DrawTransText8_14A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-14+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 14(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 14(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 16(pjDst)
|
|
b __DrawTransText8_14A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_16A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-14+2, 26, 29
|
|
beq __DrawTransText8_14A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-14+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 14(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 14(pjDst)
|
|
b __DrawTransText8_14A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_15A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-14+2, 26, 29
|
|
beq __DrawTransText8_14A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-14+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 14(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 14(pjDst)
|
|
b __DrawTransText8_14A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_13A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-18+2, 26, 29
|
|
beq __DrawTransText8_10A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-18+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 10(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 10(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 12(pjDst)
|
|
b __DrawTransText8_10A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_12A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-18+2, 26, 29
|
|
beq __DrawTransText8_10A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-18+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 10(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 10(pjDst)
|
|
b __DrawTransText8_10A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_11A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-18+2, 26, 29
|
|
beq __DrawTransText8_10A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-18+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 10(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 10(pjDst)
|
|
b __DrawTransText8_10A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_9A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-22+2, 26, 29
|
|
beq __DrawTransText8_6A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 6(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 8(pjDst)
|
|
b __DrawTransText8_6A2
|
|
//
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawTransText8_8A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-22+2, 26, 29
|
|
beq __DrawTransText8_6A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 6(pjDst)
|
|
b __DrawTransText8_6A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_7A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-22+2, 26, 29
|
|
beq __DrawTransText8_6A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 6(pjDst)
|
|
b __DrawTransText8_6A2
|
|
//
|
|
TEXT_PROC(__DrawTransText8_5A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-26+2, 26, 29
|
|
beq __DrawTransText8_2A2
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 2(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 4(pjDst)
|
|
b __DrawTransText8_2A2
|
|
//
|
|
#endif // (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawTransText8_30A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0-2+2, 26, 29
|
|
beq skip8_37
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0-2+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 26(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 26(pjDst)
|
|
skip8_37:
|
|
TEXT_PROC(__DrawTransText8_26A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-6+2, 26, 29
|
|
beq skip8_38
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-6+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 22(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 22(pjDst)
|
|
skip8_38:
|
|
TEXT_PROC(__DrawTransText8_22A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-10+2, 26, 29
|
|
beq skip8_39
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-10+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 18(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 18(pjDst)
|
|
skip8_39:
|
|
TEXT_PROC(__DrawTransText8_18A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-14+2, 26, 29
|
|
beq skip8_40
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-14+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 14(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 14(pjDst)
|
|
skip8_40:
|
|
TEXT_PROC(__DrawTransText8_14A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-18+2, 26, 29
|
|
beq skip8_41
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-18+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 10(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 10(pjDst)
|
|
skip8_41:
|
|
TEXT_PROC(__DrawTransText8_10A2)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-22+2, 26, 29
|
|
beq skip8_42
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-22+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 6(pjDst)
|
|
skip8_42:
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawTransText8_6A2)
|
|
#endif // (! USESHORT8)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-26+2, 26, 29
|
|
beq skip8_43
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-26+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 2(pjDst)
|
|
skip8_43:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText8_32A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0+1+2, 26, 29
|
|
beq __DrawTransText8_29A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0+1+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 29(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 29(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 31(pjDst)
|
|
b __DrawTransText8_29A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_31A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0+1+2, 26, 29
|
|
beq __DrawTransText8_29A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0+1+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 29(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 29(pjDst)
|
|
b __DrawTransText8_29A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_30A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 0+1+2, 26, 29
|
|
beq __DrawTransText8_29A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 0+1+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 29(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 29(pjDst)
|
|
b __DrawTransText8_29A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_28A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-3+2, 26, 29
|
|
beq __DrawTransText8_25A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-3+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 25(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 25(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 27(pjDst)
|
|
b __DrawTransText8_25A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_27A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-3+2, 26, 29
|
|
beq __DrawTransText8_25A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-3+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 25(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 25(pjDst)
|
|
b __DrawTransText8_25A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_26A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-3+2, 26, 29
|
|
beq __DrawTransText8_25A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-3+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 25(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 25(pjDst)
|
|
b __DrawTransText8_25A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_24A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-7+2, 26, 29
|
|
beq __DrawTransText8_21A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-7+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 21(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 21(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 23(pjDst)
|
|
b __DrawTransText8_21A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_23A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-7+2, 26, 29
|
|
beq __DrawTransText8_21A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-7+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 21(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 21(pjDst)
|
|
b __DrawTransText8_21A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_22A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-7+2, 26, 29
|
|
beq __DrawTransText8_21A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-7+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 21(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 21(pjDst)
|
|
b __DrawTransText8_21A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_20A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-11+2, 26, 29
|
|
beq __DrawTransText8_17A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-11+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 17(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 17(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 19(pjDst)
|
|
b __DrawTransText8_17A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_19A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-11+2, 26, 29
|
|
beq __DrawTransText8_17A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-11+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 17(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 17(pjDst)
|
|
b __DrawTransText8_17A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_18A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-11+2, 26, 29
|
|
beq __DrawTransText8_17A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-11+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 17(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 17(pjDst)
|
|
b __DrawTransText8_17A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_16A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-15+2, 26, 29
|
|
beq __DrawTransText8_13A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-15+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 13(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 13(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 15(pjDst)
|
|
b __DrawTransText8_13A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_15A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-15+2, 26, 29
|
|
beq __DrawTransText8_13A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-15+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 13(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 13(pjDst)
|
|
b __DrawTransText8_13A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_14A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-15+2, 26, 29
|
|
beq __DrawTransText8_13A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-15+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 13(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 13(pjDst)
|
|
b __DrawTransText8_13A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_12A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-19+2, 26, 29
|
|
beq __DrawTransText8_9A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-19+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 9(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 9(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 11(pjDst)
|
|
b __DrawTransText8_9A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_11A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-19+2, 26, 29
|
|
beq __DrawTransText8_9A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-19+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 9(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 9(pjDst)
|
|
b __DrawTransText8_9A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_10A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-19+2, 26, 29
|
|
beq __DrawTransText8_9A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-19+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 9(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 9(pjDst)
|
|
b __DrawTransText8_9A3
|
|
//
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawTransText8_8A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-23+2, 26, 29
|
|
beq __DrawTransText8_5A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 5(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 5(pjDst)
|
|
srwi w, w, 16
|
|
stb w, 7(pjDst)
|
|
b __DrawTransText8_5A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_7A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-23+2, 26, 29
|
|
beq __DrawTransText8_5A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lhz w1, 5(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 5(pjDst)
|
|
b __DrawTransText8_5A3
|
|
//
|
|
TEXT_PROC(__DrawTransText8_6A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-23+2, 26, 29
|
|
beq __DrawTransText8_5A3
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 5(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 5(pjDst)
|
|
b __DrawTransText8_5A3
|
|
//
|
|
#endif // (! USESHORT8)
|
|
//
|
|
TEXT_PROC(__DrawTransText8_29A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-3+2, 26, 29
|
|
beq skip8_44
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-3+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 25(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 25(pjDst)
|
|
skip8_44:
|
|
TEXT_PROC(__DrawTransText8_25A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-7+2, 26, 29
|
|
beq skip8_45
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-7+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 21(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 21(pjDst)
|
|
skip8_45:
|
|
TEXT_PROC(__DrawTransText8_21A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-11+2, 26, 29
|
|
beq skip8_46
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-11+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 17(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 17(pjDst)
|
|
skip8_46:
|
|
TEXT_PROC(__DrawTransText8_17A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-15+2, 26, 29
|
|
beq skip8_47
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-15+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 13(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 13(pjDst)
|
|
skip8_47:
|
|
TEXT_PROC(__DrawTransText8_13A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-19+2, 26, 29
|
|
beq skip8_48
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-19+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 9(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 9(pjDst)
|
|
skip8_48:
|
|
TEXT_PROC(__DrawTransText8_9A3)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-23+2, 26, 29
|
|
beq skip8_49
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-23+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 5(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 5(pjDst)
|
|
skip8_49:
|
|
#if (! USESHORT8)
|
|
TEXT_PROC(__DrawTransText8_5A3)
|
|
#endif // (! USESHORT8)
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-27+2, 26, 29
|
|
beq skip8_50
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-27+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lwz w1, 1(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 1(pjDst)
|
|
skip8_50:
|
|
#if SKIPZERO8
|
|
rlwinm. w, ulBits, 32-28+2, 26, 29
|
|
beqlr
|
|
#else // SKIPZERO8
|
|
rlwinm w, ulBits, 32-28+2, 26, 29
|
|
#endif // SKIPZERO8
|
|
lbz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stb w, 0(pjDst)
|
|
blr
|
|
//
|
|
// Glyph action procedures for 16 BPP
|
|
//
|
|
#if USESHORT16
|
|
TEXT_PROC(__DrawTransText16_2U)
|
|
lhz w1, 0(pjDst)
|
|
lhz w, 2(pjDst)
|
|
rlwimi w1, w, 16, 0, 15
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
srwi w, w, 16
|
|
sth w, 2(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText16_4U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beq skip16_02
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
skip16_02:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-29+2, 28, 29
|
|
beq skip16_03
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 2(pjDst)
|
|
skip16_03:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-27+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 6(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText16_6U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beq skip16_05
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
skip16_05:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-29+2, 28, 29
|
|
beq skip16_06
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 2(pjDst)
|
|
skip16_06:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-27+2, 28, 29
|
|
beq skip16_07
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 6(pjDst)
|
|
skip16_07:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-25+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-25+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 10(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 10(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText16_8U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beq skip16_09
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
skip16_09:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-29+2, 28, 29
|
|
beq skip16_10
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 2(pjDst)
|
|
skip16_10:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-27+2, 28, 29
|
|
beq skip16_11
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 6(pjDst)
|
|
skip16_11:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-25+2, 28, 29
|
|
beq skip16_12
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-25+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 10(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 10(pjDst)
|
|
skip16_12:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-23+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-23+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 14(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 14(pjDst)
|
|
blr
|
|
#else // USESHORT16
|
|
TEXT_PROC(__DrawTransText16_2U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-29+2, 28, 29
|
|
beq __DrawTransText16_1U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 2(pjDst)
|
|
b __DrawTransText16_1U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_4U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-27+2, 28, 29
|
|
beq __DrawTransText16_3U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 6(pjDst)
|
|
b __DrawTransText16_3U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_6U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-25+2, 28, 29
|
|
beq __DrawTransText16_5U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-25+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 10(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 10(pjDst)
|
|
b __DrawTransText16_5U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_8U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-23+2, 28, 29
|
|
beq __DrawTransText16_7U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-23+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 14(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 14(pjDst)
|
|
b __DrawTransText16_7U
|
|
#endif // USESHORT16
|
|
//
|
|
TEXT_PROC(__DrawTransText16_10U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-21+2, 28, 29
|
|
beq __DrawTransText16_9U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-21+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 18(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 18(pjDst)
|
|
b __DrawTransText16_9U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_12U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-19+2, 28, 29
|
|
beq __DrawTransText16_11U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-19+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 22(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 22(pjDst)
|
|
b __DrawTransText16_11U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_14U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-17+2, 28, 29
|
|
beq __DrawTransText16_13U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-17+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 26(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 26(pjDst)
|
|
b __DrawTransText16_13U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_16U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-15+2, 28, 29
|
|
beq __DrawTransText16_15U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-15+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 30(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 30(pjDst)
|
|
b __DrawTransText16_15U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_18U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-13+2, 28, 29
|
|
beq __DrawTransText16_17U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-13+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 34(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 34(pjDst)
|
|
b __DrawTransText16_17U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_20U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-11+2, 28, 29
|
|
beq __DrawTransText16_19U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-11+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 38(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 38(pjDst)
|
|
b __DrawTransText16_19U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_22U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-9+2, 28, 29
|
|
beq __DrawTransText16_21U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-9+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 42(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 42(pjDst)
|
|
b __DrawTransText16_21U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_24U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-7+2, 28, 29
|
|
beq __DrawTransText16_23U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-7+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 46(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 46(pjDst)
|
|
b __DrawTransText16_23U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_26U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-5+2, 28, 29
|
|
beq __DrawTransText16_25U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-5+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 50(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 50(pjDst)
|
|
b __DrawTransText16_25U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_28U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-3+2, 28, 29
|
|
beq __DrawTransText16_27U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-3+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 54(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 54(pjDst)
|
|
b __DrawTransText16_27U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_30U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 0-1+2, 28, 29
|
|
beq __DrawTransText16_29U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 0-1+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 58(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 58(pjDst)
|
|
b __DrawTransText16_29U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_32U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 0+1+2, 28, 29
|
|
beq __DrawTransText16_31U
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 0+1+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 62(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 62(pjDst)
|
|
b __DrawTransText16_31U
|
|
//
|
|
TEXT_PROC(__DrawTransText16_31U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 0-1+2, 28, 29
|
|
beq skip16_30
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 0-1+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 58(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 58(pjDst)
|
|
skip16_30:
|
|
TEXT_PROC(__DrawTransText16_29U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-3+2, 28, 29
|
|
beq skip16_31
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-3+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 54(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 54(pjDst)
|
|
skip16_31:
|
|
TEXT_PROC(__DrawTransText16_27U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-5+2, 28, 29
|
|
beq skip16_32
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-5+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 50(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 50(pjDst)
|
|
skip16_32:
|
|
TEXT_PROC(__DrawTransText16_25U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-7+2, 28, 29
|
|
beq skip16_33
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-7+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 46(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 46(pjDst)
|
|
skip16_33:
|
|
TEXT_PROC(__DrawTransText16_23U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-9+2, 28, 29
|
|
beq skip16_34
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-9+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 42(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 42(pjDst)
|
|
skip16_34:
|
|
TEXT_PROC(__DrawTransText16_21U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-11+2, 28, 29
|
|
beq skip16_35
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-11+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 38(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 38(pjDst)
|
|
skip16_35:
|
|
TEXT_PROC(__DrawTransText16_19U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-13+2, 28, 29
|
|
beq skip16_36
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-13+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 34(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 34(pjDst)
|
|
skip16_36:
|
|
TEXT_PROC(__DrawTransText16_17U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-15+2, 28, 29
|
|
beq skip16_37
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-15+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 30(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 30(pjDst)
|
|
skip16_37:
|
|
TEXT_PROC(__DrawTransText16_15U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-17+2, 28, 29
|
|
beq skip16_38
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-17+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 26(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 26(pjDst)
|
|
skip16_38:
|
|
TEXT_PROC(__DrawTransText16_13U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-19+2, 28, 29
|
|
beq skip16_39
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-19+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 22(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 22(pjDst)
|
|
skip16_39:
|
|
TEXT_PROC(__DrawTransText16_11U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-21+2, 28, 29
|
|
beq skip16_40
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-21+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 18(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 18(pjDst)
|
|
skip16_40:
|
|
TEXT_PROC(__DrawTransText16_9U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-23+2, 28, 29
|
|
beq skip16_41
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-23+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 14(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 14(pjDst)
|
|
skip16_41:
|
|
TEXT_PROC(__DrawTransText16_7U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-25+2, 28, 29
|
|
beq skip16_42
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-25+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 10(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 10(pjDst)
|
|
skip16_42:
|
|
TEXT_PROC(__DrawTransText16_5U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-27+2, 28, 29
|
|
beq skip16_43
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-27+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 6(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 6(pjDst)
|
|
skip16_43:
|
|
TEXT_PROC(__DrawTransText16_3U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-29+2, 28, 29
|
|
beq skip16_44
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-29+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 2(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 2(pjDst)
|
|
skip16_44:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText16_1A)
|
|
TEXT_PROC(__DrawTransText16_1U)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 0(pjDst)
|
|
blr
|
|
//
|
|
#if USESHORT16
|
|
TEXT_PROC(__DrawTransText16_3A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beq skip16_47
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
skip16_47:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-28+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 4(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText16_5A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beq skip16_49
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
skip16_49:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-28+2, 28, 29
|
|
beq skip16_50
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 4(pjDst)
|
|
skip16_50:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-26+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-26+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 8(pjDst)
|
|
blr
|
|
//
|
|
TEXT_PROC(__DrawTransText16_7A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beq skip16_52
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
skip16_52:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-28+2, 28, 29
|
|
beq skip16_53
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 4(pjDst)
|
|
skip16_53:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-26+2, 28, 29
|
|
beq skip16_54
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-26+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 8(pjDst)
|
|
skip16_54:
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-24+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-24+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 12(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 12(pjDst)
|
|
blr
|
|
//
|
|
#else // USESHORT16
|
|
TEXT_PROC(__DrawTransText16_3A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-28+2, 28, 29
|
|
beq __DrawTransText16_2A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 4(pjDst)
|
|
b __DrawTransText16_2A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_5A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-26+2, 28, 29
|
|
beq __DrawTransText16_4A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-26+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 8(pjDst)
|
|
b __DrawTransText16_4A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_7A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-24+2, 28, 29
|
|
beq __DrawTransText16_6A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-24+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 12(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 12(pjDst)
|
|
b __DrawTransText16_6A
|
|
#endif // USESHORT16
|
|
//
|
|
TEXT_PROC(__DrawTransText16_9A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-22+2, 28, 29
|
|
beq __DrawTransText16_8A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-22+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 16(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 16(pjDst)
|
|
b __DrawTransText16_8A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_11A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-20+2, 28, 29
|
|
beq __DrawTransText16_10A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-20+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 20(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 20(pjDst)
|
|
b __DrawTransText16_10A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_13A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-18+2, 28, 29
|
|
beq __DrawTransText16_12A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-18+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 24(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 24(pjDst)
|
|
b __DrawTransText16_12A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_15A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-16+2, 28, 29
|
|
beq __DrawTransText16_14A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-16+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 28(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 28(pjDst)
|
|
b __DrawTransText16_14A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_17A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-14+2, 28, 29
|
|
beq __DrawTransText16_16A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-14+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 32(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 32(pjDst)
|
|
b __DrawTransText16_16A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_19A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-12+2, 28, 29
|
|
beq __DrawTransText16_18A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-12+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 36(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 36(pjDst)
|
|
b __DrawTransText16_18A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_21A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-10+2, 28, 29
|
|
beq __DrawTransText16_20A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-10+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 40(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 40(pjDst)
|
|
b __DrawTransText16_20A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_23A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-8+2, 28, 29
|
|
beq __DrawTransText16_22A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-8+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 44(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 44(pjDst)
|
|
b __DrawTransText16_22A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_25A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-6+2, 28, 29
|
|
beq __DrawTransText16_24A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-6+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 48(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 48(pjDst)
|
|
b __DrawTransText16_24A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_27A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-4+2, 28, 29
|
|
beq __DrawTransText16_26A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-4+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 52(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 52(pjDst)
|
|
b __DrawTransText16_26A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_29A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 0-2+2, 28, 29
|
|
beq __DrawTransText16_28A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 0-2+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 56(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 56(pjDst)
|
|
b __DrawTransText16_28A
|
|
//
|
|
TEXT_PROC(__DrawTransText16_31A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 0-0+2, 28, 29
|
|
beq __DrawTransText16_30A
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 0-0+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lhz w1, 60(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
sth w, 60(pjDst)
|
|
b __DrawTransText16_30A
|
|
//
|
|
//
|
|
TEXT_PROC(__DrawTransText16_32A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 0-0+2, 28, 29
|
|
beq skip16_71
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 0-0+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 60(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 60(pjDst)
|
|
skip16_71:
|
|
TEXT_PROC(__DrawTransText16_30A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 0-2+2, 28, 29
|
|
beq skip16_72
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 0-2+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 56(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 56(pjDst)
|
|
skip16_72:
|
|
TEXT_PROC(__DrawTransText16_28A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-4+2, 28, 29
|
|
beq skip16_73
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-4+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 52(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 52(pjDst)
|
|
skip16_73:
|
|
TEXT_PROC(__DrawTransText16_26A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-6+2, 28, 29
|
|
beq skip16_74
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-6+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 48(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 48(pjDst)
|
|
skip16_74:
|
|
TEXT_PROC(__DrawTransText16_24A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-8+2, 28, 29
|
|
beq skip16_75
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-8+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 44(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 44(pjDst)
|
|
skip16_75:
|
|
TEXT_PROC(__DrawTransText16_22A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-10+2, 28, 29
|
|
beq skip16_76
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-10+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 40(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 40(pjDst)
|
|
skip16_76:
|
|
TEXT_PROC(__DrawTransText16_20A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-12+2, 28, 29
|
|
beq skip16_77
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-12+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 36(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 36(pjDst)
|
|
skip16_77:
|
|
TEXT_PROC(__DrawTransText16_18A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-14+2, 28, 29
|
|
beq skip16_78
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-14+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 32(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 32(pjDst)
|
|
skip16_78:
|
|
TEXT_PROC(__DrawTransText16_16A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-16+2, 28, 29
|
|
beq skip16_79
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-16+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 28(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 28(pjDst)
|
|
skip16_79:
|
|
TEXT_PROC(__DrawTransText16_14A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-18+2, 28, 29
|
|
beq skip16_80
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-18+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 24(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 24(pjDst)
|
|
skip16_80:
|
|
TEXT_PROC(__DrawTransText16_12A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-20+2, 28, 29
|
|
beq skip16_81
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-20+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 20(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 20(pjDst)
|
|
skip16_81:
|
|
TEXT_PROC(__DrawTransText16_10A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-22+2, 28, 29
|
|
beq skip16_82
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-22+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 16(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 16(pjDst)
|
|
skip16_82:
|
|
TEXT_PROC(__DrawTransText16_8A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-24+2, 28, 29
|
|
beq skip16_83
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-24+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 12(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 12(pjDst)
|
|
skip16_83:
|
|
TEXT_PROC(__DrawTransText16_6A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-26+2, 28, 29
|
|
beq skip16_84
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-26+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 8(pjDst)
|
|
skip16_84:
|
|
TEXT_PROC(__DrawTransText16_4A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-28+2, 28, 29
|
|
beq skip16_85
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-28+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 4(pjDst)
|
|
skip16_85:
|
|
TEXT_PROC(__DrawTransText16_2A)
|
|
#if SKIPZERO16
|
|
rlwinm. w, ulBits, 32-30+2, 28, 29
|
|
beqlr
|
|
#else // SKIPZERO16
|
|
rlwinm w, ulBits, 32-30+2, 28, 29
|
|
#endif // SKIPZERO16
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
// Glyph action procedures for 32 BPP
|
|
//
|
|
//
|
|
TEXT_PROC(__DrawTransText32_32)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 0-0+2, 29, 29
|
|
beq skip32_01
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 0-0+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 124(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 124(pjDst)
|
|
skip32_01:
|
|
TEXT_PROC(__DrawTransText32_31)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 0-1+2, 29, 29
|
|
beq skip32_02
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 0-1+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 120(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 120(pjDst)
|
|
skip32_02:
|
|
TEXT_PROC(__DrawTransText32_30)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 0-2+2, 29, 29
|
|
beq skip32_03
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 0-2+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 116(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 116(pjDst)
|
|
skip32_03:
|
|
TEXT_PROC(__DrawTransText32_29)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-3+2, 29, 29
|
|
beq skip32_04
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-3+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 112(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 112(pjDst)
|
|
skip32_04:
|
|
TEXT_PROC(__DrawTransText32_28)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-4+2, 29, 29
|
|
beq skip32_05
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-4+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 108(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 108(pjDst)
|
|
skip32_05:
|
|
TEXT_PROC(__DrawTransText32_27)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-5+2, 29, 29
|
|
beq skip32_06
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-5+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 104(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 104(pjDst)
|
|
skip32_06:
|
|
TEXT_PROC(__DrawTransText32_26)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-6+2, 29, 29
|
|
beq skip32_07
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-6+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 100(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 100(pjDst)
|
|
skip32_07:
|
|
TEXT_PROC(__DrawTransText32_25)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-7+2, 29, 29
|
|
beq skip32_08
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-7+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 96(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 96(pjDst)
|
|
skip32_08:
|
|
TEXT_PROC(__DrawTransText32_24)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-8+2, 29, 29
|
|
beq skip32_09
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-8+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 92(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 92(pjDst)
|
|
skip32_09:
|
|
TEXT_PROC(__DrawTransText32_23)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-9+2, 29, 29
|
|
beq skip32_10
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-9+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 88(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 88(pjDst)
|
|
skip32_10:
|
|
TEXT_PROC(__DrawTransText32_22)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-10+2, 29, 29
|
|
beq skip32_11
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-10+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 84(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 84(pjDst)
|
|
skip32_11:
|
|
TEXT_PROC(__DrawTransText32_21)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-11+2, 29, 29
|
|
beq skip32_12
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-11+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 80(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 80(pjDst)
|
|
skip32_12:
|
|
TEXT_PROC(__DrawTransText32_20)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-12+2, 29, 29
|
|
beq skip32_13
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-12+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 76(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 76(pjDst)
|
|
skip32_13:
|
|
TEXT_PROC(__DrawTransText32_19)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-13+2, 29, 29
|
|
beq skip32_14
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-13+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 72(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 72(pjDst)
|
|
skip32_14:
|
|
TEXT_PROC(__DrawTransText32_18)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-14+2, 29, 29
|
|
beq skip32_15
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-14+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 68(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 68(pjDst)
|
|
skip32_15:
|
|
TEXT_PROC(__DrawTransText32_17)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-15+2, 29, 29
|
|
beq skip32_16
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-15+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 64(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 64(pjDst)
|
|
skip32_16:
|
|
TEXT_PROC(__DrawTransText32_16)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-16+2, 29, 29
|
|
beq skip32_17
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-16+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 60(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 60(pjDst)
|
|
skip32_17:
|
|
TEXT_PROC(__DrawTransText32_15)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-17+2, 29, 29
|
|
beq skip32_18
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-17+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 56(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 56(pjDst)
|
|
skip32_18:
|
|
TEXT_PROC(__DrawTransText32_14)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-18+2, 29, 29
|
|
beq skip32_19
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-18+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 52(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 52(pjDst)
|
|
skip32_19:
|
|
TEXT_PROC(__DrawTransText32_13)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-19+2, 29, 29
|
|
beq skip32_20
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-19+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 48(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 48(pjDst)
|
|
skip32_20:
|
|
TEXT_PROC(__DrawTransText32_12)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-20+2, 29, 29
|
|
beq skip32_21
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-20+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 44(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 44(pjDst)
|
|
skip32_21:
|
|
TEXT_PROC(__DrawTransText32_11)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-21+2, 29, 29
|
|
beq skip32_22
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-21+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 40(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 40(pjDst)
|
|
skip32_22:
|
|
TEXT_PROC(__DrawTransText32_10)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-22+2, 29, 29
|
|
beq skip32_23
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-22+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 36(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 36(pjDst)
|
|
skip32_23:
|
|
TEXT_PROC(__DrawTransText32_9)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-23+2, 29, 29
|
|
beq skip32_24
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-23+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 32(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 32(pjDst)
|
|
skip32_24:
|
|
TEXT_PROC(__DrawTransText32_8)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-24+2, 29, 29
|
|
beq skip32_25
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-24+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 28(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 28(pjDst)
|
|
skip32_25:
|
|
TEXT_PROC(__DrawTransText32_7)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-25+2, 29, 29
|
|
beq skip32_26
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-25+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 24(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 24(pjDst)
|
|
skip32_26:
|
|
TEXT_PROC(__DrawTransText32_6)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-26+2, 29, 29
|
|
beq skip32_27
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-26+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 20(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 20(pjDst)
|
|
skip32_27:
|
|
TEXT_PROC(__DrawTransText32_5)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-27+2, 29, 29
|
|
beq skip32_28
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-27+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 16(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 16(pjDst)
|
|
skip32_28:
|
|
TEXT_PROC(__DrawTransText32_4)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-28+2, 29, 29
|
|
beq skip32_29
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-28+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 12(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 12(pjDst)
|
|
skip32_29:
|
|
TEXT_PROC(__DrawTransText32_3)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-29+2, 29, 29
|
|
beq skip32_30
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-29+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 8(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 8(pjDst)
|
|
skip32_30:
|
|
TEXT_PROC(__DrawTransText32_2)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-30+2, 29, 29
|
|
beq skip32_31
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-30+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 4(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 4(pjDst)
|
|
skip32_31:
|
|
TEXT_PROC(__DrawTransText32_1)
|
|
#if SKIPZERO32
|
|
rlwinm. w, ulBits, 32-31+2, 29, 29
|
|
beqlr
|
|
#else // SKIPZERO32
|
|
rlwinm w, ulBits, 32-31+2, 29, 29
|
|
#endif // SKIPZERO32
|
|
lwz w1, 0(pjDst)
|
|
lwzx mask, mpnibbleulMask, w
|
|
and w1, w1, mask
|
|
lwzx w, mpnibbleulDraw, w
|
|
or w, w, w1
|
|
stw w, 0(pjDst)
|
|
blr
|
|
//
|
|
LEAF_EXIT(Text_Procs)
|