mirror of
https://github.com/cc65/cc65.git
synced 2024-12-22 12:30:41 +00:00
Changes due to code review.
This commit is contained in:
parent
399250a105
commit
db8bd84a82
@ -20,7 +20,7 @@ the target address. A quite common horizontal span for 8-bit systems is 20 or 40
|
||||
|
||||
<p>
|
||||
<tscreen><verb>
|
||||
unsigned int __fastcall__ mul20(unsigned char value);
|
||||
unsigned int __fastcall__ _mul20(unsigned char value);
|
||||
</verb></tscreen>
|
||||
|
||||
The 8 bit <tt>value</tt> is multiplied by 20 and returned as 16 bit value.
|
||||
@ -28,7 +28,7 @@ The 8 bit <tt>value</tt> is multiplied by 20 and returned as 16 bit value.
|
||||
|
||||
<p>
|
||||
<tscreen><verb>
|
||||
unsigned int __fastcall__ mul40(unsigned char value);
|
||||
unsigned int __fastcall__ _mul40(unsigned char value);
|
||||
</verb></tscreen>
|
||||
|
||||
The 8 bit <tt>value</tt> is multiplied by 40 and returned as 16 bit value.
|
||||
|
@ -33,12 +33,12 @@
|
||||
|
||||
/* Multiply an 8 bit unsigned value by 20 and return the 16 bit unsigned result */
|
||||
|
||||
unsigned int __fastcall__ mul20(unsigned char value);
|
||||
unsigned int __fastcall__ _mul20(unsigned char value);
|
||||
|
||||
|
||||
/* Multiply an 8 bit unsigned value by 40 and return the 16 bit unsigned result */
|
||||
|
||||
unsigned int __fastcall__ mul40(unsigned char value);
|
||||
unsigned int __fastcall__ _mul40(unsigned char value);
|
||||
|
||||
|
||||
|
||||
|
@ -181,7 +181,6 @@ SRCDIRS += common \
|
||||
mouse \
|
||||
runtime \
|
||||
serial \
|
||||
specialmath \
|
||||
tgi \
|
||||
zlib
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
|
||||
.export _cputcxy, _cputc
|
||||
.export plot, cputdirect, putchar
|
||||
.import gotoxy, _mul40
|
||||
.import gotoxy, __mul40
|
||||
.importzp tmp4,ptr4
|
||||
.import _revflag,setcursor
|
||||
|
||||
@ -71,7 +71,7 @@ putchar:
|
||||
sta (OLDADR),y
|
||||
|
||||
lda ROWCRS
|
||||
jsr _mul40 ; destroys tmp4, carry is cleared
|
||||
jsr __mul40 ; destroys tmp4, carry is cleared
|
||||
adc SAVMSC ; add start of screen memory
|
||||
sta ptr4
|
||||
txa
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
.export _mouse_txt_callbacks
|
||||
.importzp tmp4
|
||||
.import _mul40
|
||||
.import __mul40
|
||||
.importzp mouse_txt_char ; screen code of mouse cursor
|
||||
|
||||
.include "atari.inc"
|
||||
@ -108,7 +108,7 @@ movey:
|
||||
lsr a ; convert y position to character line
|
||||
lsr a
|
||||
lsr a
|
||||
jsr _mul40 ; carry is cleared by _mul40
|
||||
jsr __mul40 ; carry is cleared by _mul40
|
||||
adc SAVMSC
|
||||
sta scrptr
|
||||
txa
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
.include "atari.inc"
|
||||
.importzp tmp1,tmp4,ptr1,ptr2
|
||||
.import _mul40,_clrscr
|
||||
.import __mul40,_clrscr
|
||||
.export __scroll
|
||||
|
||||
.proc __scroll
|
||||
@ -40,7 +40,7 @@ down_ok:lda SAVMSC
|
||||
sta ptr2+1
|
||||
|
||||
lda tmp1
|
||||
jsr _mul40
|
||||
jsr __mul40
|
||||
sta tmp4
|
||||
lda ptr2
|
||||
sec
|
||||
@ -103,7 +103,7 @@ up: sta tmp1 ; # of lines to scroll
|
||||
jmp _clrscr
|
||||
|
||||
;multiply by 40 (xsize)
|
||||
up_ok: jsr _mul40 ; carry is cleared by _mul40
|
||||
up_ok: jsr __mul40 ; carry is cleared by __mul40
|
||||
adc SAVMSC ; add start of screen mem
|
||||
sta ptr2
|
||||
txa
|
||||
|
@ -4,7 +4,7 @@
|
||||
; cursor handling, internal function
|
||||
|
||||
.include "atari.inc"
|
||||
.import cursor,_mul40
|
||||
.import cursor,__mul40
|
||||
.export setcursor
|
||||
|
||||
.proc setcursor
|
||||
@ -14,7 +14,7 @@
|
||||
sta (OLDADR),y
|
||||
|
||||
lda ROWCRS
|
||||
jsr _mul40 ; function leaves with carry clear!
|
||||
jsr __mul40 ; function leaves with carry clear!
|
||||
adc SAVMSC ; add start of screen memory
|
||||
sta OLDADR
|
||||
txa
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
.export _cputcxy, _cputc
|
||||
.export plot, cputdirect, putchar
|
||||
.import gotoxy, _mul20
|
||||
.import gotoxy, __mul20
|
||||
.importzp ptr4
|
||||
.import setcursor
|
||||
|
||||
@ -75,7 +75,7 @@ putchar:
|
||||
pha ; save char
|
||||
|
||||
lda ROWCRS_5200
|
||||
jsr _mul20 ; destroys tmp4, carry is cleared
|
||||
jsr __mul20 ; destroys tmp4, carry is cleared
|
||||
adc SAVMSC ; add start of screen memory
|
||||
sta ptr4
|
||||
txa
|
||||
|
@ -8,15 +8,15 @@
|
||||
; See "LICENSE" file for legal information.
|
||||
;
|
||||
;
|
||||
; unsigned int __fastcall__ mul20(unsigned char value);
|
||||
; unsigned int __fastcall__ _mul20(unsigned char value);
|
||||
;
|
||||
; REMARKS: Function is defined to return with carry-flag cleared
|
||||
|
||||
|
||||
.importzp tmp4
|
||||
.export _mul20
|
||||
.export __mul20
|
||||
|
||||
.proc _mul20 ; = 30 bytes, 41/46 cycles
|
||||
.proc __mul20 ; = 30 bytes, 41/46 cycles
|
||||
|
||||
sta tmp4 ; remember value for later addition...
|
||||
ldx #0 ; clear high-byte
|
@ -8,15 +8,15 @@
|
||||
; See "LICENSE" file for legal information.
|
||||
;
|
||||
;
|
||||
; unsigned int __fastcall__ mul40(unsigned char value);
|
||||
; unsigned int __fastcall__ _mul40(unsigned char value);
|
||||
;
|
||||
; REMARKS: Function is defined to return with carry-flag cleared
|
||||
|
||||
|
||||
.importzp tmp4
|
||||
.export _mul40
|
||||
.export __mul40
|
||||
|
||||
.proc _mul40 ; = 33 bytes, 48/53 cycles
|
||||
.proc __mul40 ; = 33 bytes, 48/53 cycles
|
||||
|
||||
sta tmp4 ; remember value for later addition...
|
||||
ldx #0 ; clear high-byte
|
18
test/val/lib_common_mulxx.c
Normal file
18
test/val/lib_common_mulxx.c
Normal file
@ -0,0 +1,18 @@
|
||||
#include <specialmath.h>
|
||||
#include "unittest.h"
|
||||
|
||||
TEST
|
||||
{
|
||||
unsigned i;
|
||||
|
||||
for (i=0; i < 256; ++i)
|
||||
{
|
||||
ASSERT_AreEqual(i*20, _mul20(i), "%u", "Invalid 'mul20(%u)' calculation!" COMMA i);
|
||||
}
|
||||
|
||||
for (i=0; i < 256; ++i)
|
||||
{
|
||||
ASSERT_AreEqual(i*40, _mul40(i), "%u", "Invalid 'mul40(%u)' calculation!" COMMA i);
|
||||
}
|
||||
}
|
||||
ENDTEST
|
@ -1,18 +0,0 @@
|
||||
#include <specialmath.h>
|
||||
#include "unittest.h"
|
||||
|
||||
TEST
|
||||
{
|
||||
unsigned i;
|
||||
|
||||
for (i=0; i < 256; ++i)
|
||||
{
|
||||
ASSERT_AreEqual(i*20, mul20(i), "%u", "Invalid 'mul20(%u)' calculation!" COMMA i);
|
||||
}
|
||||
|
||||
for (i=0; i < 256; ++i)
|
||||
{
|
||||
ASSERT_AreEqual(i*40, mul40(i), "%u", "Invalid 'mul40(%u)' calculation!" COMMA i);
|
||||
}
|
||||
}
|
||||
ENDTEST
|
Loading…
Reference in New Issue
Block a user