1
0
mirror of https://github.com/stid/woz64.git synced 2024-06-15 00:29:31 +00:00
woz64/libs/math.asm

71 lines
1.3 KiB
NASM
Raw Normal View History

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"