Oxygen Basic
		Information => Development => Topic started by: Brian Alvarez on December 26, 2018, 06:26:57 PM
		
			
			- 
				
 Charles, do you by any chance have a list of supported mnemonics and registers for both 32bit and 64 bit compilations?
 
 I have currently implemented my list but i would like to make sure my list is correct. :)
- 
				Hi Brian,
 
 I don't have a coherent list, other than the codings embedded in assm.inc.
 
 o2 currently supports extensions up to SSE4.2
 
 A good reference:
 
 https://en.wikipedia.org/wiki/X86_instruction_listings
 
 
 A Listing of registers from lang.inc
 
 string x86_registers="
 
 ' regsize regno regtype
 
 al    10 101
 cl    10 111
 dl    10 121
 bl    10 131
 ah    10 141
 ch    10 151
 dh    10 161
 bh    10 171
 '---------------------------
 ax    10 201
 cx    10 211
 dx    10 221
 bx    10 231
 sp    10 241
 bp    10 251
 si    10 261
 di    10 271
 '---------------------------
 eax   10 401
 ecx   10 411
 edx   10 421
 ebx   10 431
 esp   10 441
 ebp   10 451
 esi   10 461
 edi   10 471
 '---------------------------
 st0   10 A02
 st1   10 A12
 st2   10 A22
 st3   10 A32
 st4   10 A42
 st5   10 A52
 st6   10 A62
 st7   10 A72
 '---------------------------
 mmx0  10 F03
 mmx1  10 F13
 mmx2  10 F23
 mmx3  10 F33
 mmx4  10 F43
 mmx5  10 F53
 mmx6  10 F63
 mmx7  10 F73
 '---------------------------
 xmm0  10 F04
 xmm1  10 F14
 xmm2  10 F24
 xmm3  10 F34
 xmm4  10 F44
 xmm5  10 F54
 xmm6  10 F64
 xmm7  10 F74
 xmm8  10 F84
 xmm9  10 F94
 xmm10 10 FA4
 xmm11 10 FB4
 xmm12 10 FC4
 xmm13 10 FD4
 xmm14 10 FE4
 xmm15 10 FF4
 '---------------------------
 cr0   10 405 '129
 cr2   10 415
 cr3   10 425
 cr4   10 435
 '---------------------------
 dr0   10 406 '130
 dr1   10 416
 dr2   10 426
 dr3   10 436
 dr4   10 446
 dr5   10 456
 dr6   10 466
 dr7   10 476
 '---------------------------
 es    10 407'131
 cs    10 417
 ss    10 427
 ds    10 437
 fs    10 447
 gs    10 457
 '---------------------------
 '64 bit mode registers
 '---------------------------
 rax   10 809
 rcx   10 819
 rdx   10 829
 rbx   10 839
 rsp   10 849
 rbp   10 859
 rsi   10 869
 rdi   10 879
 r8    10 889
 r9    10 899
 r10   10 8A9
 r11   10 8B9
 r12   10 8C9
 r13   10 8D9
 r14   10 8E9
 r15   10 8F9
 '---------------------------
 r8l   10 489
 r9l   10 499
 r10l  10 4A9
 r11l  10 4B9
 r12l  10 4C9
 r13l  10 4D9
 r14l  10 4E9
 r15l  10 4F9
 '---------------------------
 r8w   10 289
 r9w   10 299
 r10w  10 2A9
 r11w  10 2B9
 r12w  10 2C9
 r13w  10 2D9
 r14w  10 2E9
 r15w  10 2F9
 '---------------------------
 r8d   10 489
 r9d   10 499
 r10d  10 4A9
 r11d  10 4B9
 r12d  10 4C9
 r13d  10 4D9
 r14d  10 4E9
 r15d  10 4F9
 "
 
 'end of data x86 registers
 
 
- 
				That pretty much looks like my list as well. Most likely my list is correct. I will verify everything tomorrow, as in my tests assembly works fine. :)
 
 Thanks Charles.