This site is no longer active and is available for archival purposes only. Registration and login is disabled.

ARM(StrongArm) assembler resources(for PocketSX(fpse(PSX Emu


ARM(StrongArm) assembler resources(for PocketSX(fpse(PSX Emu

Postby Jadam » Jun 16, 2002 @ 4:58am

User avatar
Jadam
I'm a STAR!
 
Posts: 3245
Joined: Apr 9, 2002 @ 7:24pm
Location: Stony Brook, NY


ARM assembly language -v- Intel

Postby Conan » Jun 16, 2002 @ 8:27am

There's not much point in buying an Intel assembly language book to help with learning assembly language for ARM. Though many concepts are the same there's too big a difference for the Intel book to be worth it's money. It's not like buying a VC6++ book to help with eVC++ 3 where so much is similar.

Here's a site I found for you. It has all the basics


I'm looking at the assembly language in PocketGL as I write this ( it's my first look at ARM assembler ). Many of the instructions are the same as you would find in any online assembly article ( add mov sub bne ). Other than the ARM assembly docs which will give you info on the commands & registers you need to know about the memory locations on the hardware some of which you can get from existing ARM coders.

The really good news is that assembler is miles easier to understand than C++ as there's no complex contrived syntax to worry about. You do need to document much more. I document every single line of assembly.

(I am one of the small band of people on PocketMatrix who have been writing games for 20 years or more so I've written more assembly language than most people ever will mostly for Motorola & Intel chips)
What is Best in Life ?
User avatar
Conan
pm Member
 
Posts: 1309
Joined: Dec 24, 2001 @ 5:16am
Location: the Shades, Ankh-Morpock


Postby James S » Jun 16, 2002 @ 3:45pm

James S
pm Insider
 
Posts: 17064
Joined: Jan 12, 2002 @ 2:33pm
Location: Lexington, KY


Postby R0B » Jun 16, 2002 @ 5:00pm

"1011001010 NNNNNNNNNNOOOOOOOOOOOOOOOO!!!!!!" -Bender
User avatar
R0B
got muffins?
 
Posts: 1894
Joined: Jun 22, 2001 @ 12:04pm


Postby Jadam » Jun 16, 2002 @ 5:15pm

User avatar
Jadam
I'm a STAR!
 
Posts: 3245
Joined: Apr 9, 2002 @ 7:24pm
Location: Stony Brook, NY


Postby billcow » Jun 16, 2002 @ 6:27pm

Since the ARM processor is used in the Gameboy Advanced, just about any GBA dev site will have lots of info. The two I can remember off the top of my head are and . These both have lots of links to other sites, and you should be able to find some stuff there.

You can also set eVC to output assembly (with the source code embedded as comments) by going to project settings/C++/Listing files and setting listing type to "Assembly with Source".

As has been mentiponed before, ASM is really simple, writing anything in it is just a matter of planning and writing verbose comments.
Most people don't know that "A highly technical term" is actually a highly technical term used to describe something that doesn't mean anything
User avatar
billcow
pm Member
 
Posts: 81
Joined: Jan 6, 2002 @ 12:22am
Location: Dryden, NY


Postby James S » Jun 16, 2002 @ 7:51pm

James S
pm Insider
 
Posts: 17064
Joined: Jan 12, 2002 @ 2:33pm
Location: Lexington, KY


Postby refractor » Jun 16, 2002 @ 9:12pm

User avatar
refractor
pm Insider
 
Posts: 2304
Joined: Feb 5, 2002 @ 1:12pm
Location: Luxembourg


Postby Jadam » Jun 16, 2002 @ 10:18pm

User avatar
Jadam
I'm a STAR!
 
Posts: 3245
Joined: Apr 9, 2002 @ 7:24pm
Location: Stony Brook, NY


Postby refractor » Jun 17, 2002 @ 9:01am

I didn't mean to imply that your entire emulator will be in ARM, I was simply saying that the Dynarec WILL produce pure ARM code, thus to get something to produce working ARM code you must know how to write working ARM code. :)

If you want to learn MIPS or PowerPC, sure, get a MIPS or PowerPC book. If you want to learn ARM, buy a book on ARM (like the Furber book). Sheesh.
User avatar
refractor
pm Insider
 
Posts: 2304
Joined: Feb 5, 2002 @ 1:12pm
Location: Luxembourg


Postby TechMage » Jun 17, 2002 @ 9:10am

Refractor, you seem to know ALOT about Pocket PC programming. Why havn't I seen any applications or games from you? With your knowledge you could make some killer 3D PPC/HPC games, and make a butt load of money! :D
User avatar
TechMage
pm Insider
 
Posts: 2223
Joined: Sep 16, 2001 @ 5:40pm
Location: In Your Head


Postby » Jun 17, 2002 @ 9:20am

I'd have to agree with Refractor's sentiments. Writing a dynamic recompiler would be a fairly ambitious project for many coders, but to do so without any knowledge of asm, let alone ARM seems just... well, brave. :)

I'm assuming that PocketSX is more an educational experience than just getting another emu out on PPC - if so, you should be considerably wiser by the project's completion :)
User avatar
Xen Games
 
Posts: 475
Joined: Feb 8, 2002 @ 5:11pm
Location: London, UK


Postby refractor » Jun 17, 2002 @ 9:56am

User avatar
refractor
pm Insider
 
Posts: 2304
Joined: Feb 5, 2002 @ 1:12pm
Location: Luxembourg


Postby Guest » Jun 17, 2002 @ 7:11pm

once this emu is working correctly, im going to make a 3D RPG engine(with downloadable content(like Kyle's Quest)), then work on ... dunno but... a DreamCast emulator with a dynamic recompiler for the SH4, FOR MACS ONLY!!! Emulating RISC on RISC is better than RISC on CISC. both commercial of course :), this emu is a learning experience also. The hard part will be the Recompiler part of the emulator, but it seems that there are tons of emus that have dynamic recompilers.
Guest
 


Postby Dave » Jun 17, 2002 @ 8:10pm

By the way about the Dynarec - I told you guys that making a ARM DynaRec could speed up the PSX emulator.

However I've realised something since, it might not be the cpu emulation which is slowing it down, it could be the matrix coprocessor. PSX has a matrix coprocessor I think which may use floating point operations.

Now a 400 mhz Pentium processor natively has a floating point coprocessor, but the equavalent ARM processor doesn't does it? That could be the reason for the massive slowdown that was reported for 3D games (notice it's very suspicous that 2D games which don't use the Matrix calculator are faster on ARM...)

Just thought I'd better warn you - profile the code, see what it really slowing down before you assume it's definitely the cpu emulation which needs a DynaRec...
Dave
 


Next

Return to Windows Mobile


Sort


Forum Description

A discussion forum for mobile device developers on the Windows Mobile platform. Any platform specific topics are welcome.

Moderators:

Dan East, sponge, Digby, David Horn, Kevin Gelso, RICoder

Forum permissions

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 post attachments in this forum