2019-06-23 12:40:18 +02:00
|
|
|
# The OS/K Team licenses this file to you under the MIT license.
|
|
|
|
# See the LICENSE file in the project root for more information.
|
|
|
|
|
|
|
|
#---------------------------------------------------------------------------#
|
|
|
|
# Misc. instructions #
|
|
|
|
#---------------------------------------------------------------------------#
|
|
|
|
|
|
|
|
#
|
|
|
|
# Do nothing (NOOP)
|
|
|
|
#
|
|
|
|
# (nothing)
|
|
|
|
#
|
|
|
|
# Throws:
|
|
|
|
# (nothing)
|
|
|
|
#
|
|
|
|
# Preserves all flags
|
|
|
|
#
|
|
|
|
nop
|
|
|
|
|
|
|
|
#
|
|
|
|
# Pause the CPU for a very short amount of time (PAUSE)
|
|
|
|
# Used in spin-like loops
|
|
|
|
#
|
|
|
|
pause
|
|
|
|
|
|
|
|
#
|
|
|
|
# Pause the CPU for a relatively long time (XPAUSE)
|
|
|
|
#
|
|
|
|
# Throws:
|
|
|
|
# #SYS if not in supervisor mode
|
|
|
|
#
|
|
|
|
xpause
|
|
|
|
|
|
|
|
#
|
|
|
|
# Get timestamp in seconds
|
|
|
|
#
|
2019-07-04 20:33:49 +02:00
|
|
|
time r
|
2019-06-23 12:40:18 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
# Get timestamp in µseconds
|
|
|
|
#
|
2019-07-04 20:33:49 +02:00
|
|
|
utime r
|
2019-06-23 12:40:18 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
# CPU Identification Number
|
|
|
|
#
|
|
|
|
# Does nothing (for now)
|
|
|
|
#
|
|
|
|
cpuid
|
|
|
|
|
|
|
|
#---------------------------------------------------------------------------#
|
|
|
|
# Clean-up misc. instructions #
|
|
|
|
#---------------------------------------------------------------------------#
|
|
|
|
|
|
|
|
#
|
2019-07-10 17:17:45 +02:00
|
|
|
# Clear all GPR registers except RBP/RSP
|
2019-06-23 12:40:18 +02:00
|
|
|
#
|
2019-07-10 17:17:45 +02:00
|
|
|
cls
|
|
|
|
|
|
|
|
#
|
|
|
|
# Clear base registers except RBP/RSP (CLR)
|
2019-06-23 12:40:18 +02:00
|
|
|
#
|
|
|
|
clr
|
|
|
|
|
|
|
|
#
|
|
|
|
# Clear argument registers (CLA)
|
|
|
|
#
|
|
|
|
cla
|
|
|
|
|
2019-07-10 17:17:45 +02:00
|
|
|
#
|
|
|
|
# Clear nonvolatile registers (CLN)
|
|
|
|
#
|
|
|
|
cln
|
|
|
|
|
2019-06-23 12:40:18 +02:00
|
|
|
#---------------------------------------------------------------------------#
|
|
|
|
# Byte-wise / bit-wise manipulation instructions #
|
|
|
|
#---------------------------------------------------------------------------#
|
|
|
|
|
|
|
|
#
|
|
|
|
# Byte/word/dword swap (xSWAP)
|
|
|
|
#
|
|
|
|
# Change endianness
|
|
|
|
#
|
2019-07-04 20:33:49 +02:00
|
|
|
bswap r r
|
|
|
|
wswap r r
|
|
|
|
dswap r r
|
2019-06-23 12:40:18 +02:00
|
|
|
|