mirror of
https://github.com/guilhermewerner/machine
synced 2025-06-16 13:14:18 +00:00
Update operations
This commit is contained in:
@ -1,13 +1,28 @@
|
||||
use crate::Machine;
|
||||
use crate::Types::{Byte, Word};
|
||||
|
||||
pub type Register = Byte;
|
||||
pub type RegisterAddress = (Byte, Word);
|
||||
pub type AddressRegister = (Word, Byte);
|
||||
pub type Register = Byte;
|
||||
pub type TwoRegisters = (Byte, Byte);
|
||||
pub type ThreeRegisters = (Byte, Byte, Byte);
|
||||
pub type FourRegisters = (Byte, Byte, Byte, Byte);
|
||||
|
||||
pub enum PayloadType {
|
||||
Nothing,
|
||||
Register,
|
||||
RegisterAddress,
|
||||
AddressRegister,
|
||||
TwoRegisters,
|
||||
ThreeRegisters,
|
||||
FourRegisters,
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn GetRegister(vm: &mut Machine) -> Register {
|
||||
vm.ReadByte(None)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn GetRegisterAddress(vm: &mut Machine) -> RegisterAddress {
|
||||
(vm.ReadByte(None), vm.ReadWord(None))
|
||||
@ -18,11 +33,6 @@ pub fn GetAddressRegister(vm: &mut Machine) -> AddressRegister {
|
||||
(vm.ReadWord(None), vm.ReadByte(None))
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn GetRegister(vm: &mut Machine) -> Register {
|
||||
vm.ReadByte(None)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn GetTwoRegisters(vm: &mut Machine) -> TwoRegisters {
|
||||
(vm.ReadByte(None), vm.ReadByte(None))
|
||||
|
Reference in New Issue
Block a user