Test t2508:
Pseudoinstruction ALIGN
- Description
-
Alignment stuff in DATA and CODE segments uses real NOP instructions,
see No-operation encoding.
- Tested procedures
-
PseudoALIGN
SssEmitAlignment
- Source & expected listing
t2508.htm.lst
-
| | EUROASM CPU=086,LIST=ON,DUMP=ON,DUMPALL=YES,DUMPWIDTH=41
| |t2508 PROGRAM FORMAT=BIN,LISTMAP=OFF,LISTGLOBALS=OFF
|[Data16] |[Data16] SEGMENT WIDTH=16,PURPOSE=DATA,ALIGN=ZWORD
|0000:00 | ALIGN DWORD,BYTE
|0001:000000 | ALIGN DWORD
|0004:00000000000000 | ALIGN 16,11
|000B:0000000000000000000000000000000000| ALIGN YWORD
|001C:00000000 ----Dumping all.
|0020:FF | DB -1
|[Code16] |[Code16] SEGMENT WIDTH=16,PURPOSE=CODE,ALIGN=ZWORD
|0000:90 | ALIGN 16,1
|0001:9087C987D287DB87E487C987D287DB | ALIGN 16
|0010:87C9 | ALIGN 16,2
|0012:9087C987D287DB87E49087C987D2 | ALIGN 16
|0020:9087C9 | ALIGN 16,3
|0023:9087C987D287DB87E487C987D2 | ALIGN 16
|0030:87C987D2 | ALIGN 16,4
|0034:9087C987D287DB87E49087C9 | ALIGN 16
|0040:9087C987D2 | ALIGN 16,5
|0045:9087C987D287DB87E487C9 | ALIGN 16
|0050:87C987D287DB | ALIGN 16,6
|0056:9087C987D287DB87E490 | ALIGN 16
|0060:9087C987D287DB | ALIGN 16,7
|0067:9087C987D287DB87E4 | ALIGN 16
|0070:87C987D287DB87E4 | ALIGN 16,8
|0078:87C987D287DB87E4 | ALIGN 16
|0080:9087C987D287DB87E4 | ALIGN 16,9
|0089:9087C987D287DB | ALIGN 16
| | EUROASM CPU=686
|0090:90 | ALIGN 16,1
|0091:670F1F842000000000670F1F442000 | ALIGN 16
|00A0:6690 | ALIGN 16,2
|00A2:670F1F842000000000670F1F4000 | ALIGN 16
|00B0:666790 | ALIGN 16,3
|00B3:670F1F842000000000670F1F00 | ALIGN 16
|00C0:670F1F00 | ALIGN 16,4
|00C4:670F1F842000000000666790 | ALIGN 16
|00D0:670F1F4000 | ALIGN 16,5
|00D5:670F1F8420000000006690 | ALIGN 16
|00E0:670F1F442000 | ALIGN 16,6
|00E6:670F1F84200000000090 | ALIGN 16
|00F0:66670F1F442000 | ALIGN 16,7
|00F7:670F1F842000000000 | ALIGN 16
|0100:670F1F8000000000 | ALIGN 16,8
|0108:670F1F8000000000 | ALIGN 16
|0110:670F1F842000000000 | ALIGN 16,9
|0119:66670F1F442000 | ALIGN 16
|0120:90 | ALIGN DWORD,BYTE
|0121:90 | ALIGN WORD
|0122:670F1F842000000000 | ALIGN 16,11
|012B:C3 | RET
| | EUROASM CPU=386
|[Data32] |[Data32] SEGMENT WIDTH=32,PURPOSE=DATA,ALIGN=ZWORD
|00000000:00 | ALIGN DWORD,BYTE
|00000001:000000 | ALIGN DWORD
|00000004:00000000000000 | ALIGN 16,11
|0000000B:000000000000000000000000000000| ALIGN YWORD
|0000001A:000000000000 ----Dumping all.
|00000020:FF | DB -1
|[Code32] |[Code32] SEGMENT WIDTH=32,PURPOSE=CODE,ALIGN=ZWORD
|00000000:90 | ALIGN 16,1
|00000001:663E8D8420000000008D8000000000| ALIGN 16
|00000010:6690 | ALIGN 16,2
|00000012:663E8D8420000000003E8D442000 | ALIGN 16
|00000020:8D4000 | ALIGN 16,3
|00000023:663E8D8420000000008D442000 | ALIGN 16
|00000030:8D442000 | ALIGN 16,4
|00000034:663E8D8420000000008D4000 | ALIGN 16
|00000040:3E8D442000 | ALIGN 16,5
|00000045:663E8D8420000000006690 | ALIGN 16
|00000050:8D8000000000 | ALIGN 16,6
|00000056:663E8D84200000000090 | ALIGN 16
|00000060:8D842000000000 | ALIGN 16,7
|00000067:663E8D842000000000 | ALIGN 16
|00000070:3E8D842000000000 | ALIGN 16,8
|00000078:3E8D842000000000 | ALIGN 16
|00000080:663E8D842000000000 | ALIGN 16,9
|00000089:8D842000000000 | ALIGN 16
| | EUROASM CPU=686
|00000090:90 | ALIGN 16,1
|00000091:660F1F842000000000660F1F442000| ALIGN 16
|000000A0:6690 | ALIGN 16,2
|000000A2:660F1F8420000000000F1F442000 | ALIGN 16
|000000B0:0F1F00 | ALIGN 16,3
|000000B3:660F1F8420000000000F1F4000 | ALIGN 16
|000000C0:0F1F4000 | ALIGN 16,4
|000000C4:660F1F8420000000000F1F00 | ALIGN 16
|000000D0:0F1F442000 | ALIGN 16,5
|000000D5:660F1F8420000000006690 | ALIGN 16
|000000E0:660F1F442000 | ALIGN 16,6
|000000E6:660F1F84200000000090 | ALIGN 16
|000000F0:0F1F8000000000 | ALIGN 16,7
|000000F7:660F1F842000000000 | ALIGN 16
|00000100:0F1F842000000000 | ALIGN 16,8
|00000108:0F1F842000000000 | ALIGN 16
|00000110:660F1F842000000000 | ALIGN 16,9
|00000119: | ALIGN DWORD,BYTE
|00000119:90 | ALIGN WORD
|0000011A:90 | ALIGN 16,11
|0000011B:C3 | RET
| | EUROASM CPU=X64
|[Data64] |[Data64] SEGMENT WIDTH=32,PURPOSE=DATA,ALIGN=ZWORD
|00000000:00 | ALIGN DWORD,BYTE
|00000001:000000 | ALIGN DWORD
|00000004:00000000000000 | ALIGN 16,11
|0000000B:000000000000000000000000000000| ALIGN YWORD
|0000001A:000000000000 ----Dumping all.
|00000020:FF | DB -1
|[Code64] |[Code64] SEGMENT WIDTH=64,PURPOSE=CODE,ALIGN=ZWORD
|00000000:90 | ALIGN 16,1
|00000001:660F1F842000000000660F1F442000| ALIGN 16
|00000010:6690 | ALIGN 16,2
|00000012:660F1F8420000000000F1F442000 | ALIGN 16
|00000020:0F1F00 | ALIGN 16,3
|00000023:660F1F8420000000000F1F4000 | ALIGN 16
|00000030:0F1F4000 | ALIGN 16,4
|00000034:660F1F8420000000000F1F00 | ALIGN 16
|00000040:0F1F442000 | ALIGN 16,5
|00000045:660F1F8420000000006690 | ALIGN 16
|00000050:660F1F442000 | ALIGN 16,6
|00000056:660F1F84200000000090 | ALIGN 16
|00000060:0F1F8000000000 | ALIGN 16,7
|00000067:660F1F842000000000 | ALIGN 16
|00000070:0F1F842000000000 | ALIGN 16,8
|00000078:0F1F842000000000 | ALIGN 16
|00000080:660F1F842000000000 | ALIGN 16,9
|00000089: | ALIGN DWORD,BYTE
|00000089:90 | ALIGN WORD
|0000008A:90 | ALIGN 16,11
|0000008B:C3 | RET
| | ENDPROGRAM t2508
- Expected messages
t2508.out
I0180 Assembling source file "t2508.htm".
I0270 Assembling source "t2508".
I0310 Assembling source pass 1.
I0330 Assembling source pass 2 - final.
I0470 Assembling program "t2508". "t2508.htm"{56}
I0510 Assembling program pass 1. "t2508.htm"{56}
I0530 Assembling program pass 2 - final. "t2508.htm"{56}
I0660 16bit TINY BIN file "t2508.bin" created, size=972. "t2508.htm"{185}
I0650 Program "t2508" assembled in 2 passes with errorlevel 0. "t2508.htm"{185}
I0750 Source "t2508" (203 lines) assembled in 2 passes with errorlevel 0.
I0860 Listing file "t2508.htm.lst" created, size=8329.
I0990 EuroAssembler terminated with errorlevel 0.
▲Back to the top▲