mirror of
https://github.com/RevCurtisP/C02.git
synced 2024-11-25 06:31:25 +00:00
51 lines
1.3 KiB
Plaintext
51 lines
1.3 KiB
Plaintext
|
/**********************************************
|
||
|
* bitlib - Bit Manipulation Routines for C02 *
|
||
|
**********************************************/
|
||
|
|
||
|
/* Duplicate Low Order Nybble in Byte *
|
||
|
* Args: char b - Byte to Duplicate *
|
||
|
* Returns: char d - Duplicated Byte */
|
||
|
char dupl();
|
||
|
|
||
|
/* Pack Nybbles into Single Byte *
|
||
|
* Args: char l - Left Nybble *
|
||
|
* char r - Right Nybble *
|
||
|
* Returns: char b - Packed Byte */
|
||
|
char pack();
|
||
|
|
||
|
/* Rotate Byte Left *
|
||
|
* Args: char b - Byte to Rotate *
|
||
|
* char n - Number of Bits *
|
||
|
* Returns: char r - Rotated Byte */
|
||
|
char rotl();
|
||
|
|
||
|
/* Rotate Byte Right *
|
||
|
* Args: char b - Byte to Rotate *
|
||
|
* char n - Number of Bits *
|
||
|
* Returns: char r - Rotated Byte */
|
||
|
char rotr();
|
||
|
|
||
|
/* Shift Byte Left *
|
||
|
* Args: char b - Byte to Shift *
|
||
|
* char n - Number of Bits *
|
||
|
* Returns: char r - Shifted Byte */
|
||
|
char shiftl();
|
||
|
|
||
|
/* Shift Byte Right *
|
||
|
* Args: char b - Byte to Shift *
|
||
|
* char n - Number of Bits *
|
||
|
* Returns: char r - Shifted Byte */
|
||
|
char shiftr();
|
||
|
|
||
|
/* Swap Nybbles in Byte *
|
||
|
* Args: char b - Byte to Swap *
|
||
|
* Returns: char d - Swapped Byte */
|
||
|
char swap();
|
||
|
|
||
|
/* Unpack Byte into Separate Nybbles *
|
||
|
* Args: char b - Byte to Unpack *
|
||
|
* Returns: char l - Left Nybble *
|
||
|
* char r - Right Nybble */
|
||
|
char unpack();
|
||
|
|