flat assembler
Message board for the users of flat assembler.

Index > Non-x86 architectures > FASMARM v1.43 - Cross assembler for ARM CPUs

Goto page Previous  1, 2, 3 ... 9, 10, 11 ... 30, 31, 32  Next
Author
Thread Post new topic Reply to topic
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
With thanks to rugxulo I have been able to squeeze a little more space out of the zipped files to save space.
Post 07 Oct 2006, 12:02
View user's profile Send private message Visit poster's website Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo
revolution wrote:
With thanks to rugxulo I have been able to squeeze a little more space out of the zipped files to save space.


Nah, it's really AdvanceComp (DOS, Win, src for other) you should thank (or even 7-ZIP whose improved Deflate it uses). I'm surprised more people aren't using it.

(N.B. it does also remove the .ZIP comment plus at least some extra field info like TZ variable stuff, if you really need that stuff for some oddball reason).

P.S. PKWARE has updated its APPNOTE.TXT to 6.3.0 (dated Sep. 29, 2006).


Last edited by rugxulo on 20 Feb 2007, 23:29; edited 1 time in total
Post 08 Oct 2006, 02:04
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
just noticed that FASMARM aligns with 90h bytes. this has no reason on ARM, so it could be changed
Post 28 Oct 2006, 00:53
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
vid wrote:
just noticed that FASMARM aligns with 90h bytes. this has no reason on ARM, so it could be changed
The alignment byte was changed to 0xff in version 1.08. Download the latest version of you don't like 0x90.
FASMARM ReadMe.txt wrote:
- Alignment bytes changed to 0xff to facilitate faster FLASH ROM updates
Post 28 Oct 2006, 02:01
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
whooops, sorry.

also, add import (by name, not by ordinal) of "GetProcAddressA" to headers.

[edit]soon i will send you complete list of imports / names / ordininals. i have it in binary file, i just need to write routine that parses it from there


Last edited by vid on 29 Oct 2006, 20:18; edited 1 time in total
Post 29 Oct 2006, 16:37
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
also, your ARMPE4.EXE doesn't work.

It shows "invalid opcode"-like error on first instruction of htou32.

here's disassembly:
Code:
.text:00011160                 CLZ     R3, R1   ;<--- crashes here
.text:00011164                 RSB     R3, R3, #0x23
.text:00011168                 CMP     R2, #8
.text:0001116C                 MOVHI   R2, #8
.text:00011170                 CMP     R2, #0
.text:00011174                 BICEQ   R2, R3, #3
.text:00011178                 MOVNE   R2, R2,LSL#2    
Post 29 Oct 2006, 16:50
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
vid wrote:
It shows "invalid opcode"-like error on first instruction of htou32.
It seems you don't have a V5TE cpu. The CLZ instruction is a new instruction. Your test device must be an old cpu, perhaps it is a StrongARM? The StrongARM is only a V4T cpu.
Post 29 Oct 2006, 22:54
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
my device is standard ARM emulator from MS, version that ships with Visual Studio 2005. so you could think about using another one
Post 30 Oct 2006, 00:58
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
vid wrote:
my device is standard ARM emulator from MS
Forget about emulators/supplements/extentions/facsimiles/pills, use the real thing. I know for sure that the htou32 function perfectly fine on a real CPU. Nothing gives enjoyment, satisfaction and pleasure like the real thing, buy one today at a store near you.

Wink

MS are only 7 years behind the times with their emulator. I think we can consider ourselves lucky if they ever decide to make an emulator that actually emulates anything made after 1999!
Post 30 Oct 2006, 11:11
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
revolution: not everyone has real ARM device, or money to buy one equipped with WinCE.

I believe this can be turned on on the emulator, this is just default setting.

And by the way, i have one real device, but i prefer emulator because i don't have to move the device and it's USB-cable and it's power-cable everywhere where i want to use it.
Post 30 Oct 2006, 11:21
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
Okay, I let you off the hook, you can replace the first two instructions (CLZ and RSB) with this:
Code:
        mov     a4,4*8
        tst     value,0xf0000000
        moveq   a4,4*7
        tsteq   value,0xf000000
        moveq   a4,4*6
        tsteq   value,0xf00000
        moveq   a4,4*5
        tsteq   value,0xf0000
        moveq   a4,4*4
        tsteq   value,0xf000
        moveq   a4,4*3
        tsteq   value,0xf00
        moveq   a4,4*2
        tsteq   value,0xf0
        moveq   a4,4*1
        tsteq   value,0xf
        moveq   a4,0    
Post 30 Oct 2006, 11:24
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
ufff Shocked
i will try it later
Post 30 Oct 2006, 11:41
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
smx



Joined: 02 Nov 2006
Posts: 3
smx
First, thank you revolution for this FASM ARM project Smile (btw I cannot write proper english... sorry...)

I have a question about ELF format (not dwarf):

Why I cannot use the keyword "section" (but only segment)? Is a limitation for the "normal" ELF format? (I have read the readme but I cannot understand...why... and I don't know how to search this question over the forum)...

When is better to use ELF DWARF format over ELF? (sorry if this is a common question Sad...) I have understand that DWARF format can have symbol for debugging..?

Thank you for an answer Smile best regards
Post 02 Nov 2006, 18:31
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo
Pardon if this isn't what you were asking! Confused

Quote:

version 1.66 (May 7, 2006)

[-] Changed ELF executable to use "segment" directive in place of "section",
to make the distinction between the run-time segments and linkable
sections. If you had a "section" directive in your ELF executables and they
no longer assemble, replace it with "segment".
Post 03 Nov 2006, 09:38
View user's profile Send private message Visit poster's website Reply with quote
smx



Joined: 02 Nov 2006
Posts: 3
smx
OMG....

thanks!! Sorry for the stupid question...
Post 03 Nov 2006, 11:38
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
smx wrote:
When is better to use ELF DWARF format over ELF?
DWARF format is for a different purpose so neither is better than the other. ELF plain format is for standard executables. ELF DWARF format is for executables with debugging information included. Although, it is worth noting that I have only used the DWARF format with the standard ARM tools that are not OS bound. For an OS bound piece of code (like LINUX executables) the DWARF format could well fail. So if you don't have the ARM tools then I would suggest that, for a start point, you stick with the basic ELF plain format.
smx wrote:
Why I cannot use the keyword "section" (but only segment)?
FASMARM follows as much as possible the FASM syntax with ony minor variations to customise for ARM functionality. The same works the other way, the ARM format is also followed where possible but not so strictly as to conflict with the FASM syntax.

Hope this helps.
Post 03 Nov 2006, 13:07
View user's profile Send private message Visit poster's website Reply with quote
smx



Joined: 02 Nov 2006
Posts: 3
smx
Thank you for the answers Wink
Post 03 Nov 2006, 17:57
View user's profile Send private message Reply with quote
Kuemmel



Joined: 30 Jan 2006
Posts: 198
Location: Stuttgart, Germany
Kuemmel
Hi guys,

just another ARM desktop machine came to 'daylight'. It's based on an ARM9 from Samsung and good old Risc OS as operating system ...though you got to pay quite a price for getting hands on this tiny sexy machine Wink

http://www.cjemicros.co.uk/micros/products/a9home.shtml
http://www.advantagesix.com/products/A9home.html

Image
Post 03 Nov 2006, 18:30
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
Kuemmel: your picture shows no cables, is it all wireless connections? Is the blue box the CPU? Can LINUX be instaled to make it a more mainstream system?
Post 04 Nov 2006, 05:45
View user's profile Send private message Visit poster's website Reply with quote
Kuemmel



Joined: 30 Jan 2006
Posts: 198
Location: Stuttgart, Germany
Kuemmel
revolution wrote:
Kuemmel: your picture shows no cables, is it all wireless connections? Is the blue box the CPU? Can LINUX be instaled to make it a more mainstream system?


I think they attached some wireless keyboard and mouse, like available for PC also...anyway, yes the blue box includes everything like mentioned on the specs:

Internal

* 400MHz Samsung ARM9 processor
* Graphics processor
* Power Management Unit
* 128M SDRAM
* 8M VRAM
* 40GB hard disc
* 2-3W average internal power usage

For Linux, probably the other available desktop machine by another company, called 'Iyonix', mentioned in this thread earlier by me is may be more ready and more powerfull, it's based on an 600 MHz Intel XScale 80321:

http://www.iyonix.com/linux.html

On my old Risc PC it was at least possible to install Linux or NetBSD, may be it's possible also for the A9Home, you got to mail the manufacturer directly about it. The unix-links are:

http://www.arm.linux.org.uk/docs/whatis.php
http://www.netbsd.org/Ports/acorn32/


Last edited by Kuemmel on 06 Nov 2006, 20:39; edited 1 time in total
Post 04 Nov 2006, 09:53
View user's profile Send private message Visit poster's website Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page Previous  1, 2, 3 ... 9, 10, 11 ... 30, 31, 32  Next

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar.

Powered by rwasa.