flat assembler
Message board for the users of flat assembler.
![]() Goto page Previous 1, 2, 3 ... 20, 21, 22 ... 31, 32, 33 Next |
Author |
|
den_po 30 Jul 2011, 19:45
ok, the problem occurs in windows 7 and not in winxp
edit: patch finish_elf_segment, <<mov ebx,[number_of_sections]>>, <jmp ARM_finish_elf_segment,nop>, 0 fixup table contains an item for original command and it shouldn't be placed there for the new one. 3441 Offset: 0000B441 Type: HighLow 40B43F: E906150000 1jmp .00040C94A 40B444: 90 nop |
|||
![]() |
|
den_po 30 Jul 2011, 21:03
solution:
Code: patch finish_elf_segment, <<mov ebx,[number_of_sections]>,dec ebx>, <nop, push ARM_finish_elf_segment,ret>, 0 finish_elf_exe_patch_length = 7 macro finish_elf_exe_patch_code { mov ebx,[number_of_sections] dec ebx } |
|||
![]() |
|
revolution 31 Jul 2011, 03:34
Version 1.23 now available:
Quote: v1.23 2011-Jul-31 |
|||
![]() |
|
Dex4u 17 Sep 2011, 21:27
This as good info on using Arm asm on a Android phone.
http://www.eggwall.com/2011/09/android-arm-assembly-device-set-up-part.html |
|||
![]() |
|
asmhack 17 Sep 2011, 23:23
Windows 8 will have ARM support.
Revolution, how you got involed btw to all this ARM stuff ? Doesn't seems like just a hobby project. |
|||
![]() |
|
revolution 18 Sep 2011, 02:51
asmhack wrote: Revolution, how you got involed btw to all this ARM stuff ? |
|||
![]() |
|
ndt 23 Sep 2011, 18:05
Code: ldr r0, [test] bx lr align 4 test dw 0xdeadbeef ok Code: ldr r0, [=0xdeadbeef] ; or [=test] bx lr align 4 test dw 0xdeadbeef fasmarm crashes |
|||
![]() |
|
revolution 29 Sep 2011, 15:30
Thanks for the report.
Of course, the syntax with = is not a valid form so even if it doesn't crash it should just generate an error message. I will look into it later next month when I am back at my desk. |
|||
![]() |
|
ndt 25 Oct 2011, 18:59
im stuck - what about endianness on ARMv4T?
for my arm7tdmi based phone Code: ;For ARM7TDMI CPUs: processor 0xfe coprocessor 0x0 CODE16 nop fasmarm generate C0 46 bytes but my devices require big endian - 46 C0...[/b] |
|||
![]() |
|
revolution 25 Oct 2011, 19:05
ndt: What is your device?
From what has been documented for all ARM CPUs to date the code is always required to be in little endian format. I seriously doubt that your ARM device really does need big endian. Perhaps you can check again for some other reason why it might not be working for you. Remember that to use THUMB code you have to make a branch with the lowest bit of PC set to switch to THUMB mode. |
|||
![]() |
|
ndt 25 Oct 2011, 19:09
it's nokia dct-3 based phone - 3310 alike. Nokia FW's code and data is big endian - i usually use gnu as (with be option) but fasmarm would be much better for patches
|
|||
![]() |
|
revolution 25 Oct 2011, 19:24
ndt: I posted some instructions for how to modify fasmarm to generate BE code in this thread (here).
ndt: Is it possible that the programming hardware/software for your phone is doing a BE-to-LE conversion on the fly before programming the ROM/FLASH/whatever? I ask because the CPU will always need to see LE code, there is no ARM CPU made that can run BE code. |
|||
![]() |
|
ndt 25 Oct 2011, 19:37
thanks for the workaround, thanks!
as I said nokia firmware which i want to patch is in BE format so hacking should be BE too ![]() gas with -mbig-endian option just work fine according to http://nokix.sourceforge.net/help/blacksphere/sub_100hardware/sub_arm/sub_gcc.htm boot ROM code is BE itself. maybe it's somethig specific to flash memory used... |
|||
![]() |
|
revolution 25 Oct 2011, 19:49
Well it appears as though this is the reason (assuming I understand that site correctly):
|
|||
![]() |
|
ndt 25 Oct 2011, 21:07
yes, you're right. And as it's read only i will modify fasmarm for my own purposes as you posted above.
thanks for your help |
|||
![]() |
|
revolution 28 Oct 2011, 02:28
http://www.arm.com/files/downloads/ARMv8_Architecture.pdf
No actual details as yet, just an overview. Looks a lot like more the x86-64 than ever before. 64 bit is a new operating mode that can only be switched on/off by an exception. 48 bit physical addressing. 31 GPRs. AES and SHA crypto instructions. Hypervisor to support multiple OSes. Seems that ARM have been reading the Intel and AMD manuals and starting to copy some of the things they liked the look of. |
|||
![]() |
|
Alphonso 28 Oct 2011, 09:49
What's happening with W8 and ARM?
|
|||
![]() |
|
revolution 28 Oct 2011, 16:03
Alphonso wrote: What's happening with W8 and ARM? |
|||
![]() |
|
revolution 29 Oct 2011, 07:20
ndt wrote:
Version 1.24 now available: Quote: v1.24 2011-Oct-29 |
|||
![]() |
|
Goto page Previous 1, 2, 3 ... 20, 21, 22 ... 31, 32, 33 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2023, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.