Home » Archimedes archive » Archimedes World » AW_Vol15_Issue7 CD ROM Index Disc.adf » coders » vsn2/h/ass

vsn2/h/ass

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Archimedes World » AW_Vol15_Issue7 CD ROM Index Disc.adf » coders
Filename: vsn2/h/ass
Read OK:
File size: 02F1 bytes
Load address: 0000
Exec address: 0000
File contents
typedef struct {
  signed char er;
  signed char eg;
  signed char eb;
  signed char byte4;  /*reminder that struct will be word sized*/
} compact_dither_error;

extern void g256wnp_internal(int x, int y, char *dp, char *sp, compact_dither_error *de, char *lut,
                             unsigned int *pal256def);
extern int rbbcinc(int r, int k);
extern int div_frac16(int number, int divisor);
extern int mul_frac16(int x, int a);
extern int mul_frac16c(int x, int a);
extern int sqrt_frac16(unsigned int x);
extern int gauss16(void);
extern void sgauss16(int seed);
extern int cos16(int a);
extern int sin16(int a);
extern int exp16(int a);
extern int ln16(int a);
extern int pow16(int a, int b);
extern int acs16(int a);
extern int asn16(int a);
00000000  74 79 70 65 64 65 66 20  73 74 72 75 63 74 20 7b  |typedef struct {|
00000010  0a 20 20 73 69 67 6e 65  64 20 63 68 61 72 20 65  |.  signed char e|
00000020  72 3b 0a 20 20 73 69 67  6e 65 64 20 63 68 61 72  |r;.  signed char|
00000030  20 65 67 3b 0a 20 20 73  69 67 6e 65 64 20 63 68  | eg;.  signed ch|
00000040  61 72 20 65 62 3b 0a 20  20 73 69 67 6e 65 64 20  |ar eb;.  signed |
00000050  63 68 61 72 20 62 79 74  65 34 3b 20 20 2f 2a 72  |char byte4;  /*r|
00000060  65 6d 69 6e 64 65 72 20  74 68 61 74 20 73 74 72  |eminder that str|
00000070  75 63 74 20 77 69 6c 6c  20 62 65 20 77 6f 72 64  |uct will be word|
00000080  20 73 69 7a 65 64 2a 2f  0a 7d 20 63 6f 6d 70 61  | sized*/.} compa|
00000090  63 74 5f 64 69 74 68 65  72 5f 65 72 72 6f 72 3b  |ct_dither_error;|
000000a0  0a 0a 65 78 74 65 72 6e  20 76 6f 69 64 20 67 32  |..extern void g2|
000000b0  35 36 77 6e 70 5f 69 6e  74 65 72 6e 61 6c 28 69  |56wnp_internal(i|
000000c0  6e 74 20 78 2c 20 69 6e  74 20 79 2c 20 63 68 61  |nt x, int y, cha|
000000d0  72 20 2a 64 70 2c 20 63  68 61 72 20 2a 73 70 2c  |r *dp, char *sp,|
000000e0  20 63 6f 6d 70 61 63 74  5f 64 69 74 68 65 72 5f  | compact_dither_|
000000f0  65 72 72 6f 72 20 2a 64  65 2c 20 63 68 61 72 20  |error *de, char |
00000100  2a 6c 75 74 2c 0a 20 20  20 20 20 20 20 20 20 20  |*lut,.          |
00000110  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000120  20 20 20 75 6e 73 69 67  6e 65 64 20 69 6e 74 20  |   unsigned int |
00000130  2a 70 61 6c 32 35 36 64  65 66 29 3b 0a 65 78 74  |*pal256def);.ext|
00000140  65 72 6e 20 69 6e 74 20  72 62 62 63 69 6e 63 28  |ern int rbbcinc(|
00000150  69 6e 74 20 72 2c 20 69  6e 74 20 6b 29 3b 0a 65  |int r, int k);.e|
00000160  78 74 65 72 6e 20 69 6e  74 20 64 69 76 5f 66 72  |xtern int div_fr|
00000170  61 63 31 36 28 69 6e 74  20 6e 75 6d 62 65 72 2c  |ac16(int number,|
00000180  20 69 6e 74 20 64 69 76  69 73 6f 72 29 3b 0a 65  | int divisor);.e|
00000190  78 74 65 72 6e 20 69 6e  74 20 6d 75 6c 5f 66 72  |xtern int mul_fr|
000001a0  61 63 31 36 28 69 6e 74  20 78 2c 20 69 6e 74 20  |ac16(int x, int |
000001b0  61 29 3b 0a 65 78 74 65  72 6e 20 69 6e 74 20 6d  |a);.extern int m|
000001c0  75 6c 5f 66 72 61 63 31  36 63 28 69 6e 74 20 78  |ul_frac16c(int x|
000001d0  2c 20 69 6e 74 20 61 29  3b 0a 65 78 74 65 72 6e  |, int a);.extern|
000001e0  20 69 6e 74 20 73 71 72  74 5f 66 72 61 63 31 36  | int sqrt_frac16|
000001f0  28 75 6e 73 69 67 6e 65  64 20 69 6e 74 20 78 29  |(unsigned int x)|
00000200  3b 0a 65 78 74 65 72 6e  20 69 6e 74 20 67 61 75  |;.extern int gau|
00000210  73 73 31 36 28 76 6f 69  64 29 3b 0a 65 78 74 65  |ss16(void);.exte|
00000220  72 6e 20 76 6f 69 64 20  73 67 61 75 73 73 31 36  |rn void sgauss16|
00000230  28 69 6e 74 20 73 65 65  64 29 3b 0a 65 78 74 65  |(int seed);.exte|
00000240  72 6e 20 69 6e 74 20 63  6f 73 31 36 28 69 6e 74  |rn int cos16(int|
00000250  20 61 29 3b 0a 65 78 74  65 72 6e 20 69 6e 74 20  | a);.extern int |
00000260  73 69 6e 31 36 28 69 6e  74 20 61 29 3b 0a 65 78  |sin16(int a);.ex|
00000270  74 65 72 6e 20 69 6e 74  20 65 78 70 31 36 28 69  |tern int exp16(i|
00000280  6e 74 20 61 29 3b 0a 65  78 74 65 72 6e 20 69 6e  |nt a);.extern in|
00000290  74 20 6c 6e 31 36 28 69  6e 74 20 61 29 3b 0a 65  |t ln16(int a);.e|
000002a0  78 74 65 72 6e 20 69 6e  74 20 70 6f 77 31 36 28  |xtern int pow16(|
000002b0  69 6e 74 20 61 2c 20 69  6e 74 20 62 29 3b 0a 65  |int a, int b);.e|
000002c0  78 74 65 72 6e 20 69 6e  74 20 61 63 73 31 36 28  |xtern int acs16(|
000002d0  69 6e 74 20 61 29 3b 0a  65 78 74 65 72 6e 20 69  |int a);.extern i|
000002e0  6e 74 20 61 73 6e 31 36  28 69 6e 74 20 61 29 3b  |nt asn16(int a);|
000002f0  0a                                                |.|
000002f1