| Command | Implemented as | Parameters | Example |
| Aaa | Aaa | -- | Aaa, |
| Aad | Aad | -- | Aad, |
| Aam, | Aam | -- | Aam, |
| Aas | Aas | -- | Aas, |
| Cbw | Convertbw | -- | Convertbw, |
| cdq | convertdq | -- | Convertdq |
| Cmp | Compare | Immediate to register | Compare 5 to ah, |
| Cupid | Cupid | -- | Cupid, |
| Cwd | Convertwd | -- | Convertwd, |
| Cwde | Convertwde | -- | Convertwde, |
| Daa | Daa | -- | Daa, |
| Das | Das | -- | Das, |
| Hlt | Halt | -- | Hlt, |
| In | Inport | Immediate value[port] | Inport 9, |
| Into | Into | -- | Into, |
| Invd | Invd | -- | Invd, |
| Iret | Irets | -- | Irets, |
| Ja | Jifa | <label> [beta] | Jifa label_to_jump, |
| Jae | Jifae | <label> [beta] | Jifae label_to_jump, |
| Je | Jife | <label> [beta] | Jife label_to_jump, |
| Jmp | Jump | <label> [beta] | jump label_to_jump, |
| jz | Jifz | <label> [beta] | Jifz label_to_jump, |
| Lahf | Lahf | -- | Lahf, |
| Leave | Leave | -- | Leave, |
| Neg | Negate | Register | Negate ax, |
| Or | Or | Immediate to register | Or 7 to bx, |
| Out | Outport | Immediate value[port] | Outport 9, |
| Pop | Pop | register | Pop ax, |
| Push | Push | register | Push ax, |
| Rdmsr | Rdmsr, | -- | Rdmsr, |
| Rdpmc | Rdpmc, | -- | Rdpmc, |
| Rdtsc | Rdtsc | -- | Rdtsc, |
| Rsm | Rsm, | -- | Rsm |
| Sahf | Storefah | -- | Storefah, |
| Shl | shiftl | Register | Shiftl bx, |
| Shr | Shiftr, | Register | Shiftr bx, |
| sub | Substract | Register 1 to register 2 | Substract ax to bx, |
| Sub | Substract | Immediate to register | Substract 2 to bx, |
| test | Test | Immediate to register | Test 10 to ah, |
| Wbinvd | Wbinvd | -- | Wbinvd |
| Wrmsr | Wrmsr | -- | Wrmsr, |
| Xlat | Tbllooktrans | -- | Tbllooktrans, |
| xor | Xor | Register1 to register 2 | Xor ax to bx, |
| [default easm language] add=add clc=clearcf cld=cleardf cli=clearif cmc=compcf dec=decr inc=incr int=inter loop=loop mov=move mul=multip nop=noop not=not popa=popallr popf=popallf pusha=pushallr ... |
| eniex_for_skullbox_default.eas | eniex_for_skullbox_romana.eas |
| *program that highlights the usage of 'add' along with the loop instruction[testing stage]*prints the even digits *assembled with eniasm v0_7 move 25 to cx, move 0 to dh, *row move 0 to dl, *column ciclu: *set cursor position move 2 to ah, move 0 to bh, inter 16, *print "hello eniasm!" move 0 to bh, move 14 to ah, move 'h' to al, *prints 'h' inter 16, move 'e' to al, *prints 'e' inter 16, move 'l' to al, *prints 'l' inter 16, move 'l' to al, *prints 'l' inter 16, move 'o' to al, *prints 'o' inter 16, move ' ' to al, *prints ' ' inter 16, move 'e' to al, *prints 'e' inter 16, move 'n' to al, *prints 'n' inter 16, move 'i' to al, *prints 'i' inter 16, move 'a' to al, *prints 'a' inter 16, move 's' to al, *prints 's' inter 16, move 'm' to al, *prints 'm' inter 16, move '!' to al, *prints '!' inter 16, incr dh, incr dl, loop ciclu, move 0 to ah, inter 22, rets, | *program that highlights the usage of 'add' along with the loop instruction[testing stage]*prints the even digits *assembled with eniasm v0_7 muta 25 la cx, muta 0 la dh, *row muta 0 la dl, *column eticheta: *set cursor position muta 2 la ah, muta 0 la bh, interrupt 16, *print "hello eniasm!" muta 0 la bh, muta 14 la ah, muta 'h' la al, *prints 'h' interrupt 16, muta 'e' la al, *prints 'e' interrupt 16, muta 'l' la al, *prints 'l' interrupt 16, muta 'l' la al, *prints 'l' interrupt 16, muta 'o' la al, *prints 'o' interrupt 16, muta ' ' la al, *prints ' ' interrupt 16, muta 'e' la al, *prints 'e' interrupt 16, muta 'n' la al, *prints 'n' interrupt 16, muta 'i' la al, *prints 'i' interrupt 16, muta 'a' la al, *prints 'a' interrupt 16, muta 's' la al, *prints 's' interrupt 16, muta 'm' la al, *prints 'm' interrupt 16, muta '!' la al, *prints '!' interrupt 16, incrementeaza dh, incrementeaza dl, ciclu eticheta, muta 0 la ah, interrupt 22, iesi, |
| *prints '00001110b' which is 15 [adding 5[al] to 10[bl]] *assembled with eniasm v0_8 move 5 to al, move 10 to bl, add al to bl, substract 1 to bl, move 8 to cx, print: move 2 to ah, move '0' to dl, test 128 to bl, jifz zero, move '1' to dl, zero: inter 33, shiftl bl, loop print, move 'b' to dl, inter 33, move 0 to ah, inter 22, rets, |
| eniex_test_aaa.eas | eniex_test_aas.eas |
| *displays '14' on the screan which is calculated by adding 4 to 9*assembled with eniasm v0_8 *we store a 9 move 9 to ah, *then we store a 5 move 5 to al, *we add the 5 to 9=14 add ah to al, *clear tens byte of bcd xor ah to ah, *adjust result to bcd form *ah = 1, al = 4 -> '14' aaa, *store content of the ax register move ax to dx, *output the result move 14 to ah, *output first digit or 48 to dh, move dh to al, inter 16, *output second digit or 48 to dl, move dl to al, inter 16, *wait for keypress,then exit move 0 to ah, inter 22, | *displays '7' on the screan which is calculated by substracting 8 from 15*assembled with eniasm v0_8 *calculate 5-8 move 5 to al, move 8 to bl, substract bl to al, *convert to binary coded decimal, al = 7 and 1 is borrowed from ah *like calculating 15-8 aas, *convert to a printable char or 48 to al, *print the result move 14 to ah, inter 16, *wait the keypress then exit move 0 to ah, inter 22, |
| eniex_graf_ex_default.eas | 0_sample_vga_graphics.eas |
| *displays a graphical dot *assembled with eniasm v0_8 *set graphics mode move 0 to ah, move 19 to al, inter 16, *call put pixel with parameters move 12 to ah, move 15 to al, move 0 to bh, move 10 to cx, move 10 to dx, inter 16, *wait for key then exit move 0 to ah, inter 22, rets, | *displays a graphical rectangle on the screen *assembled with eniasm v0_8 *set graphics mode move 0 to ah, move 19 to al, inter 16, *draw upper line move 150 to cx, move 20 to dx, move 10 to al, *color u1: move 12 to ah, inter 16, decr cx, compare 100 to cx, jifae u1, *draw bottom line move 150 to cx, move 30 to dx, move 10 to al, *color u2: move 12 to ah, inter 16, decr cx, compare 100 to cx, jifa u2, *draw left line move 100 to cx, move 30 to dx, move 14 to al, *color u3: move 12 to ah, inter 16, decr dx, compare 20 to dx, jifa u3, *draw right line move 150 to cx, move 30 to dx, move 14 to al, *color u4: move 12 to ah, inter 16, decr dx, compare 20 to dx, jifa u4, *wait for keypress move 0 to ah, inter 22, *exit rets, |
| *displays a color map on the screen with all the possible colors in assembly*assembled with eniasm v0_8 *set video mode move 3 to ax, inter 16, *disable blinking move 4099 to ax, move 0 to bx, inter 16, *start from top left corner move 0 to dl, move 0 to dh, move 0 to bl, jump next_char, *advanse one row next_row: incr dh, compare 16 to dh, jife stop_print, move 0 to dl, *set new cursor position at dl , dh next_char: move 2 to ah, inter 16, move 'a' to al, move 0 to bh, move 1 to cx, move 9 to ah, inter 16, *advanse it for char attribute incr bl, incr dl, compare 16 to dl, jife next_row, jump next_char, *stops the print and sets the cursor position at dl , dh stop_print: move 10 to dl, move 5 to dh, move 2 to ah, inter 16, *teletype output move 'x' to al, move 14 to ah, inter 16, *wait for key pressed then exit move 0 to ah, inter 22, rets, |