2020-01-12 08:10:01 +00:00
|
|
|
|
2019-11-06 04:31:17 +00:00
|
|
|
#importonce
|
2020-01-12 08:10:01 +00:00
|
|
|
#import "../libs/module.asm"
|
|
|
|
|
|
|
|
// ------------------------------------
|
|
|
|
// MACROS
|
|
|
|
// ------------------------------------
|
|
|
|
|
|
|
|
|
2019-11-06 04:31:17 +00:00
|
|
|
.filenamespace Math
|
|
|
|
|
2020-01-12 08:10:01 +00:00
|
|
|
* = * "Math Lin"
|
2019-11-06 04:31:17 +00:00
|
|
|
|
2020-01-12 08:10:01 +00:00
|
|
|
// ------------------------------------
|
|
|
|
// METHODS
|
|
|
|
// ------------------------------------
|
2019-11-10 03:10:52 +00:00
|
|
|
|
2020-01-12 08:10:01 +00:00
|
|
|
init: {
|
|
|
|
rts
|
|
|
|
}
|
|
|
|
|
|
|
|
toDebug: {
|
|
|
|
ModuleDefaultToDebug(module_name, version)
|
|
|
|
rts
|
|
|
|
}
|
2019-11-21 06:18:23 +00:00
|
|
|
|
|
|
|
//------------------------------------------------------------------------------------
|
2019-11-06 04:31:17 +00:00
|
|
|
multiply: {
|
2019-11-21 06:18:23 +00:00
|
|
|
sei
|
|
|
|
pha
|
|
|
|
txa
|
2019-11-06 04:31:17 +00:00
|
|
|
pha
|
2019-11-21 06:18:23 +00:00
|
|
|
|
2019-11-06 04:31:17 +00:00
|
|
|
lda #$00
|
|
|
|
ldx #$08
|
|
|
|
clc
|
|
|
|
m0: bcc.r m1
|
|
|
|
clc
|
2019-11-17 07:41:00 +00:00
|
|
|
adc MemMap.MATH.factor2
|
2019-11-06 04:31:17 +00:00
|
|
|
m1: ror
|
2019-11-17 07:41:00 +00:00
|
|
|
ror MemMap.MATH.factor1
|
2019-11-06 04:31:17 +00:00
|
|
|
dex
|
|
|
|
bpl.r m0
|
2019-11-17 07:41:00 +00:00
|
|
|
ldx MemMap.MATH.factor1
|
2019-11-06 04:31:17 +00:00
|
|
|
|
2019-11-17 07:41:00 +00:00
|
|
|
sta MemMap.MATH.result
|
|
|
|
stx MemMap.MATH.result+1
|
2019-11-06 04:31:17 +00:00
|
|
|
|
|
|
|
pla
|
2019-11-21 06:18:23 +00:00
|
|
|
tax
|
|
|
|
pla
|
|
|
|
cli
|
2019-11-06 04:31:17 +00:00
|
|
|
rts
|
2019-11-23 02:50:25 +00:00
|
|
|
}
|
|
|
|
|
2020-01-12 08:10:01 +00:00
|
|
|
|
|
|
|
// ------------------------------------
|
|
|
|
// DATA
|
|
|
|
// ------------------------------------
|
|
|
|
|
|
|
|
* = * "Math Lib Data"
|
|
|
|
version: .byte 1, 1, 0
|
|
|
|
.encoding "screencode_mixed"
|
|
|
|
module_name:
|
|
|
|
.text "lib:math"
|
|
|
|
.byte 0
|
|
|
|
|
|
|
|
|
|
|
|
#import "../core/mem_map.asm"
|
|
|
|
|