6502-opcodes/firepower-core/src/main/scala/com/htmlism/firepower/core/Load.scala
2022-12-04 18:36:11 -05:00

15 lines
376 B
Scala

package com.htmlism.firepower.core
object Load:
def constA[B: Encoded.Byte](x: B): Asm1[Reg.A] =
const(x)
def constX[B: Encoded.Byte](x: B): Asm1[Reg.X] =
const(x)
def constY[B: Encoded.Byte](x: B): Asm1[Reg.Y] =
const(x)
private def const[R, A](x: A)(using R: Register[R], A: Encoded.Byte[A]) =
Asm1Instructions[R](List(s"${R.load} ${A.int(x)}"))