]> git.zerfleddert.de Git - linexec-j720/blobdiff - asm/asm.asm
fix linebreaks
[linexec-j720] / asm / asm.asm
index fa9a15c7a6b57b1901ddd16988da606db9b34da3..ddc6ef538431d735a35725bac39e7ed6e2abbed7 100644 (file)
-       TTL     C:\pocket\test\asm.cpp\r
-\r
-       AREA    |.drectve|, DRECTVE\r
-       DCB     "-defaultlib:coredll.lib "\r
-       DCB     "-defaultlib:corelibc.lib "\r
-\r
-       EXPORT  |?do_it@@YAXXZ|                         ; do_it\r
-       AREA    |.pdata|, PDATA\r
-|$T222|        DCD     |?do_it@@YAXXZ|\r
-       DCD     0x40000100\r
-       AREA    |.text|, CODE\r
-|?do_it@@YAXXZ| PROC                                   ; do_it\r
-|$M220|\r
-\r
-\r
-               mcr     p15, 0, r0, c7, c5, 0   ;/* invalidate i cache & BTB */\r
-               mrc     p15, 0, r0, c2, c0, 0\r
-               mov     r0, r0\r
-               sub     pc, pc, #4              \r
-\r
-\r
-; turn off LCD controller...\r
-; I couldn't figure out how to use armasm.exe conditional with variables\r
-; #if xscale\r
-;              ldr     r9, =0x44000000\r
-;              ldr     r8, [r9]\r
-;              orr     r8, r8, #0x400\r
-;              str     r8, [r9]\r
-\r
-; #elif strongarm\r
-               ldr     r9, =0xb0100000\r
-               ldr     r8, [r9]\r
-               bic     r8, r8, #1\r
-               str     r8, [r9]\r
-\r
-; turn off unused serial ports\r
-\r
-               mov r8, #0\r
-               ldr r9, =0x80010000\r
-               str r8, [r9, #0xC]\r
-               ldr r9, =0x80050000\r
-               str r8, [r9, #0xC]\r
-\r
-; #endif\r
-\r
-               add     r9, r1, #0x100\r
-\r
-; #if xscale\r
-;              ldr     r5, =0xa0000100\r
-;              ldr     r7, =0xa0400000\r
-\r
-; #elif strongarm\r
-               ldr     r5, =0xc0000100\r
-               ldr     r7, =0xc0400000\r
-; #endif\r
-\r
-\r
-label          ldr     r8, [r9]\r
-               str     r8, [r5]\r
-               add     r9, r9, #4 \r
-               add     r5, r5, #4 \r
-               cmp     r5, r7\r
-               blt     label\r
-\r
-; #if xscale\r
-;              MOV     r4, #0xA0000000\r
-\r
-; #elif strongarm\r
-               MOV     r4, #0xc0000000\r
-; #endif\r
-\r
-               add     r11,r4,#0x8000\r
-\r
-               mov     r10,r2          ;machine number passed from DRAMloader\r
-\r
-               mcr     p15, 0, r0, c8, c7, 0x00 ;/* invalidate I+D TLB */\r
-               mrc     p15, 0, r0, c2, c0, 0\r
-               mov     r0, r0\r
-               sub     pc, pc, #4              \r
-\r
-; they skipped this, unnecessary? seems like we need to do this\r
-\r
-               mcr     p15, 0, r0, c7, c5, 0   ;/* invalidate i cache & BTB */\r
-       \r
-               mov     r0, #0\r
-               mcr     p15, 0, r0, c13, c0, 0\r
-               mrc     p15, 0, r0, c2, c0, 0\r
-               mov     r0, r0\r
-               sub     pc, pc, #4              \r
-\r
-               mov     r0, #0\r
-               mov     r1, r10\r
-               ldr     r2, [r2, #0]\r
-               mov     r2, #0\r
-\r
-; Jump into the kernel:\r
-               mov             pc, r11 \r
-\r
-\r
-|$M221|\r
-       ENDP  ; |?do_it@@YAXXZ|, do_it\r
-       END\r
-\r
+       TTL     C:\pocket\test\asm.cpp
+
+       AREA    |.drectve|, DRECTVE
+       DCB     "-defaultlib:coredll.lib "
+       DCB     "-defaultlib:corelibc.lib "
+
+       EXPORT  |?do_it@@YAXXZ|                         ; do_it
+       AREA    |.pdata|, PDATA
+|$T222|        DCD     |?do_it@@YAXXZ|
+       DCD     0x40000100
+       AREA    |.text|, CODE
+|?do_it@@YAXXZ| PROC                                   ; do_it
+|$M220|
+
+
+               mcr     p15, 0, r0, c7, c5, 0   ;/* invalidate i cache & BTB */
+               mrc     p15, 0, r0, c2, c0, 0
+               mov     r0, r0
+               sub     pc, pc, #4              
+
+
+; turn off LCD controller...
+; I couldn't figure out how to use armasm.exe conditional with variables
+; #if xscale
+;              ldr     r9, =0x44000000
+;              ldr     r8, [r9]
+;              orr     r8, r8, #0x400
+;              str     r8, [r9]
+
+; #elif strongarm
+               ldr     r9, =0xb0100000
+               ldr     r8, [r9]
+               bic     r8, r8, #1
+               str     r8, [r9]
+
+; turn off unused serial ports
+
+               mov r8, #0
+               ldr r9, =0x80010000
+               str r8, [r9, #0xC]
+               ldr r9, =0x80050000
+               str r8, [r9, #0xC]
+
+; #endif
+
+               add     r9, r1, #0x100
+
+; #if xscale
+;              ldr     r5, =0xa0000100
+;              ldr     r7, =0xa0400000
+
+; #elif strongarm
+               ldr     r5, =0xc0000100
+               ldr     r7, =0xc0400000
+; #endif
+
+
+label          ldr     r8, [r9]
+               str     r8, [r5]
+               add     r9, r9, #4 
+               add     r5, r5, #4 
+               cmp     r5, r7
+               blt     label
+
+; #if xscale
+;              MOV     r4, #0xA0000000
+
+; #elif strongarm
+               MOV     r4, #0xc0000000
+; #endif
+
+               add     r11,r4,#0x8000
+
+               mov     r10,r2          ;machine number passed from DRAMloader
+
+               mcr     p15, 0, r0, c8, c7, 0x00 ;/* invalidate I+D TLB */
+               mrc     p15, 0, r0, c2, c0, 0
+               mov     r0, r0
+               sub     pc, pc, #4              
+
+; they skipped this, unnecessary? seems like we need to do this
+
+               mcr     p15, 0, r0, c7, c5, 0   ;/* invalidate i cache & BTB */
+       
+               mov     r0, #0
+               mcr     p15, 0, r0, c13, c0, 0
+               mrc     p15, 0, r0, c2, c0, 0
+               mov     r0, r0
+               sub     pc, pc, #4              
+
+               mov     r0, #0
+               mov     r1, r10
+               ldr     r2, [r2, #0]
+               mov     r2, #0
+
+; Jump into the kernel:
+               mov             pc, r11 
+
+
+|$M221|
+       ENDP  ; |?do_it@@YAXXZ|, do_it
+       END
+
Impressum, Datenschutz