rendered paste body .file "main.pp"
# Begin asmlist al_begin
.section .debug_line
.Ldebug_line0:
.section .debug_abbrev
.Ldebug_abbrev0:
.section .text
.Ltext0:
# End asmlist al_begin
# Begin asmlist al_stabs
# End asmlist al_stabs
# Begin asmlist al_procedures
.section .text.main
.balign 4
.globl PASCALMAIN
PASCALMAIN:
.globl main
main:
# Temps allocated between r11-40 and r11-40
# Register r13,r11,r12 allocated
.Ll1:
# [main.pp]
# [18] begin
mov r12,r13
stmfd r13!,{r11,r12,r14,r15}
sub r11,r12,#4
# Register r12 released
sub r13,r13,#40
# Var blockLayer located in register r0
# Register r0,r1,r2,r3,r12,r13,r14,r15,f0,f1,f2,f3 allocated
bl FPC_INITIALIZEUNITS
# Register r0,r1,r2,r3,r12,r13,r14,r15,f0,f1,f2,f3 released
# Register r0 allocated
# Register r0 released
.Ll2:
mov r0,#0
# Register r0 allocated
.Ll3:
# [19] blockLayer := MEMBGMAP(30);
mov r0,#30
# Register r1,r2,r3,r12,r13,r14,r15 allocated
bl GBA_BG_MEMBGMAP$WORD$$POINTER
# Register r1,r2,r3,r12,r13,r14,r15 released
# Register r1 allocated
.Ll4:
# [20] SetMode(MODE_3 or BG2_ENABLE);
ldr r1,.Lj9
# Register r2 allocated
ldr r2,.Lj13
ldr r2,[r2]
# Register r2,r1 released
str r1,[r2]
# Register r1 allocated
.Ll5:
# [22] sMap[2] := 15;
mov r1,#15
# Register r2 allocated
ldr r2,.Lj16
# Register r1,r2 released
strh r1,[r2]
# Register r1 allocated
.Ll6:
# [25] blockLayer[2] := sMap[2];
mov r1,r0
# Register r3 allocated
ldr r3,.Lj19
# Register r2 allocated
ldrb r2,[r3]
# Register r2 released
strb r2,[r1, #4]
# Register r3 released
# Register r2 allocated
ldrb r2,[r3, #1]
# Register r1,r2 released
strb r2,[r1, #5]
.Ll7:
# [31] if blockLayer[2] = 15 then
ldrh r0,[r0, #4]
# Register r0 released
cmp r0,#15
beq .Lj20
b .Lj21
.Lj20:
# Register r0 allocated
.Ll8:
# [32] VideoBuffer[16000] := $001F; // Never reached if USE_SWAP is undefined
ldr r0,.Lj24
ldr r0,[r0]
# Register r1 allocated
mov r1,#31
# Register r2 allocated
mov r2,#32000
# Register r0,r1,r2 released
strh r1,[r0, r2]
.Lj21:
.Ll9:
# [33] end.
bl FPC_DO_EXIT
ldmea r11,{r11,r13,r15}
.Lj9:
.long 1027
.Lj13:
.long TC_GBA_REGS_REG_DISPCNT
.Lj16:
.long U_P$MAIN_SMAP+4
.Lj19:
.long U_P$MAIN_SMAP+4
.Lj24:
.long TC_GBA_REGS_VIDEOBUFFER
.Lt1:
.Le0:
.size main, .Le0 - main
# End asmlist al_procedures
# Begin asmlist al_globals
.section .bss
.balign 4
# [14] sMap: array [0..4] of u16;
.globl U_P$MAIN_SMAP
.size U_P$MAIN_SMAP,10
U_P$MAIN_SMAP:
.zero 10
.section .bss
.balign 4
# [15] blockLayer: pu16;
.globl U_P$MAIN_BLOCKLAYER
.size U_P$MAIN_BLOCKLAYER,4
U_P$MAIN_BLOCKLAYER:
.zero 4
.section .data.THREADVARLIST_P$MAIN
.balign 4
.globl THREADVARLIST_P$MAIN
THREADVARLIST_P$MAIN:
.long 0
# [34]
.Le1:
.size THREADVARLIST_P$MAIN, .Le1 - THREADVARLIST_P$MAIN
.section .data.INITFINAL
.balign 4
.globl INITFINAL
INITFINAL:
.long 2,0
.long INIT$_SYSTEM
.long FINALIZE$_SYSTEM
.long INIT$_OBJPAS
.long FINALIZE$_OBJPAS
.Le2:
.size INITFINAL, .Le2 - INITFINAL
.section .data.FPC_THREADVARTABLES
.balign 4
.globl FPC_THREADVARTABLES
FPC_THREADVARTABLES:
.long 7
.long THREADVARLIST_SYSTEM
.long THREADVARLIST_OBJPAS
.long THREADVARLIST_GBA_TYPES
.long THREADVARLIST_GBA_REGS
.long THREADVARLIST_GBA_VIDEO
.long THREADVARLIST_GBA_BG
.long THREADVARLIST_P$MAIN
.Le3:
.size FPC_THREADVARTABLES, .Le3 - FPC_THREADVARTABLES
.section .data.FPC_RESOURCESTRINGTABLES
.balign 4
.globl FPC_RESOURCESTRINGTABLES
FPC_RESOURCESTRINGTABLES:
.long 0
.Le4:
.size FPC_RESOURCESTRINGTABLES, .Le4 - FPC_RESOURCESTRINGTABLES
.section .data
.balign 4
.ascii "FPC 2.1.1 [2006/09/24] for arm - gba"
.section .data.__stklen
.balign 4
.globl __stklen
__stklen:
.long 262144
.section .data.__heapsize
.balign 4
.globl __heapsize
__heapsize:
.long 0
# End asmlist al_globals
# Begin asmlist al_const
# End asmlist al_const
# Begin asmlist al_typedconsts
# End asmlist al_typedconsts
# Begin asmlist al_rotypedconsts
# End asmlist al_rotypedconsts
# Begin asmlist al_threadvars
# End asmlist al_threadvars
# Begin asmlist al_imports
# End asmlist al_imports
# Begin asmlist al_exports
# End asmlist al_exports
# Begin asmlist al_resources
# End asmlist al_resources
# Begin asmlist al_rtti
# End asmlist al_rtti
# Begin asmlist al_dwarf
# End asmlist al_dwarf
# Begin asmlist al_dwarf_info
.section .debug_info
.Ldebug_info0:
.long .Ledebug_info0-.Lf1
.Lf1:
.short 2
.long .Ldebug_abbrev0
.byte 4
.uleb128 1
.ascii "main.pp\000"
.ascii "Free Pascal 2.1.1 2006/09/24\000"
.ascii "\000"
.byte 9
.byte 3
.long .Ldebug_line0
.long .Ltext0
.long .Letext0
# Syms - Begin Staticsymtable
.uleb128 2
.ascii "main\000"
.long main
.long .Lt1
.byte 0
.uleb128 3
.ascii "SMAP\000"
.byte 1
.byte 5
.byte 3
.long U_P$MAIN_SMAP
.long _$PROGRAM$_Ld1
.uleb128 4
.ascii "BLOCKLAYER\000"
.byte 1
.byte 2
.byte 144
.uleb128 0
.long _$PROGRAM$_Ld2
# Syms - End Staticsymtable
# Defs - Begin unit SYSTEM has index 1
# Defs - End unit SYSTEM has index 1
# Defs - Begin unit OBJPAS has index 6
# Defs - End unit OBJPAS has index 6
# Defs - Begin unit GBA_TYPES has index 2
_$PROGRAM$_Ld3:
.uleb128 5
.ascii "WORD\000"
.byte 7
.byte 2
_$PROGRAM$_Ld2:
.uleb128 6
.long _$PROGRAM$_Ld3
# Defs - End unit GBA_TYPES has index 2
# Defs - Begin unit GBA_REGS has index 4
# Defs - End unit GBA_REGS has index 4
# Defs - Begin unit GBA_VIDEO has index 3
# Defs - End unit GBA_VIDEO has index 3
# Defs - Begin unit GBA_BG has index 5
# Defs - End unit GBA_BG has index 5
# Defs - Begin Staticsymtable
_$PROGRAM$_Ld4:
.uleb128 7
.ascii "SHORTINT\000"
.byte 5
.byte 1
_$PROGRAM$_Ld1:
.uleb128 8
.uleb128 10
.uleb128 16
.long _$PROGRAM$_Ld3
.uleb128 9
.sleb128 0
.sleb128 4
.long _$PROGRAM$_Ld4
.byte 0
# Defs - End Staticsymtable
.byte 0
.byte 0
.Ledebug_info0:
# End asmlist al_dwarf_info
# Begin asmlist al_dwarf_abbrev
.section .debug_abbrev
# Abbrev 1
.uleb128 1
.uleb128 17
.byte 1
.uleb128 3
.uleb128 8
.uleb128 37
.uleb128 8
.uleb128 27
.uleb128 8
.uleb128 19
.uleb128 11
.uleb128 66
.uleb128 11
.uleb128 16
.uleb128 6
.uleb128 17
.uleb128 1
.uleb128 18
.uleb128 1
.byte 0
.byte 0
# Abbrev 2
.uleb128 2
.uleb128 46
.byte 1
.uleb128 3
.uleb128 8
.uleb128 17
.uleb128 1
.uleb128 18
.uleb128 1
.byte 0
.byte 0
# Abbrev 3
.uleb128 3
.uleb128 52
.byte 0
.uleb128 3
.uleb128 8
.uleb128 63
.uleb128 12
.uleb128 2
.uleb128 10
.uleb128 73
.uleb128 16
.byte 0
.byte 0
# Abbrev 4
.uleb128 4
.uleb128 52
.byte 0
.uleb128 3
.uleb128 8
.uleb128 63
.uleb128 12
.uleb128 2
.uleb128 10
.uleb128 73
.uleb128 16
.byte 0
.byte 0
# Abbrev 5
.uleb128 5
.uleb128 36
.byte 0
.uleb128 3
.uleb128 8
.uleb128 62
.uleb128 11
.uleb128 11
.uleb128 11
.byte 0
.byte 0
# Abbrev 6
.uleb128 6
.uleb128 15
.byte 0
.uleb128 73
.uleb128 16
.byte 0
.byte 0
# Abbrev 7
.uleb128 7
.uleb128 36
.byte 0
.uleb128 3
.uleb128 8
.uleb128 62
.uleb128 11
.uleb128 11
.uleb128 11
.byte 0
.byte 0
# Abbrev 8
.uleb128 8
.uleb128 1
.byte 1
.uleb128 11
.uleb128 15
.uleb128 46
.uleb128 15
.uleb128 73
.uleb128 16
.byte 0
.byte 0
# Abbrev 9
.uleb128 9
.uleb128 33
.byte 0
.uleb128 34
.uleb128 13
.uleb128 47
.uleb128 13
.uleb128 73
.uleb128 16
.byte 0
.byte 0
.byte 0
# End asmlist al_dwarf_abbrev
# Begin asmlist al_dwarf_line
.section .debug_line
# === header start ===
.long .Ledebug_line0-.Lf2
.Lf2:
.short 3
.long .Lehdebug_line0-.Lf3
.Lf3:
.byte 1
.byte 1
.byte 1
.byte 255
.byte 13
.byte 0
.byte 1
.byte 1
.byte 1
.byte 1
.byte 0
.byte 0
.byte 0
.byte 1
.byte 0
.byte 0
.byte 1
# include_directories
.byte 0
# file_names
.ascii "main.pp\000"
.uleb128 0
.uleb128 0
.uleb128 0
.byte 0
.Lehdebug_line0:
# === header end ===
# [18:1]
.byte 0
.uleb128 5
.byte 2
.long .Ll1
.byte 5
.uleb128 1
.byte 29
# [18:1]
.byte 2
.uleb128 .Ll2-.Ll1
.byte 1
# [19:17]
.byte 2
.uleb128 .Ll3-.Ll2
.byte 5
.uleb128 17
.byte 13
# [20:3]
.byte 2
.uleb128 .Ll4-.Ll3
.byte 5
.uleb128 3
.byte 13
# [22:3]
.byte 2
.uleb128 .Ll5-.Ll4
.byte 14
# [25:3]
.byte 2
.uleb128 .Ll6-.Ll5
.byte 15
# [31:16]
.byte 2
.uleb128 .Ll7-.Ll6
.byte 5
.uleb128 16
.byte 18
# [32:5]
.byte 2
.uleb128 .Ll8-.Ll7
.byte 5
.uleb128 5
.byte 13
# [33:1]
.byte 2
.uleb128 .Ll9-.Ll8
.byte 5
.uleb128 1
.byte 13
.byte 0
.byte 1
.byte 1
# ###################
.Ledebug_line0:
# End asmlist al_dwarf_line
# Begin asmlist al_picdata
# End asmlist al_picdata
# Begin asmlist al_resourcestrings
# End asmlist al_resourcestrings
# Begin asmlist al_end
.section .text
.Letext0:
# End asmlist al_end