Date : Wed, 26 Sep 2007 07:33:33 +0100
From : info@... (Sprow)
Subject: : ARM7 Evaluation System & BBC/ Master
In article <413924.60044.qm@...>,
Peter Craven <cjl_craves@...> wrote:
> Is it possible to write Assembly Language on the ARM7 (tube to Master/
> BBC)...is there an assembler available that can be loaded to the ARM7?
Certainly, there's one in BBC BASIC just the same as normal, only it accepts
ARM mnemonics instead of 6502 ones.
The BBC BASIC V manual is available online which probably details the
assembler, though it probably wont cover some of the newer additions like
MSR/MRS/LDRH.
Assembly language is contained in [] and assembled at P%. Labels follow '.'.
Syntax:
SWI[<cond>] <expr>
ADC|ADD|AND|BIC|EOR|ORR|RSB|RSC|SBC|SUB[<cond>][S] <reg>,<reg>,<shift>
MOV|MVN[<cond>][S] <reg>,<shift>
CMN|CMP|TEQ|TST[<cond>][S|P] <reg>,<shift>
MUL[<cond>][S] <reg>,<reg>,<reg>
MLA|UMULL|UMLAL|SMULL|SMLAL[<cond>][S] <reg>,<reg>,<reg>,<reg>
LDR|STR[<cond>][B|SB|H|SH] <reg>, '[ <reg>[,<shift>] '] [,<shift>][!]
LDM|STM[<cond>]DA|DB|EA|ED|FA|FD|IA|IB <reg>[!],{<reg list>}[^]
B[L][<cond>] <label>
BX[<cond>] <reg>
MRC|MCR[<cond>] <copro>,<expr>,<reg>,<cpreg>,<cpreg> [,<expr>]
CDP[<cond>] <copro>,<expr>,<cpreg>,<cpreg>,<cpreg> [,<expr>]
LDC|STC[<cond>][L] <copro>, '[ <reg>[,#<expr>] '] [,#<expr>][!]
SWP[<cond>][B] <reg>,<reg>, '[<reg> ']
MRS[<cond>] <reg>,<psr>
MSR[<cond>] <psr>_[c][x][s][f],<reg>|#<expr>
OPT|=|DCB|EQUB|DCW|EQUW|DCD|EQUD|EQUS <expr>
ADR[<cond>] <reg>,<label>
ALIGN|NOP
where <shift>=<reg>|#<expr>|<reg>,ASL|LSL|LSR|ASR|ROR <reg>|#<expr>|RRX
and <cond>=AL|CC|CS|EQ|GE|GT|HI|HS|LE|LS|LT|LO|MI|NE|NV|PL|VC|VS
and <reg>=R0 to 15 or LR or PC or <expr>
and <copro>=CP0 to 15 or <expr>
and <cpreg>=C0 to 15 or <expr>
and <psr>=CPSR|SPSR
>