Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.acorn.programmer > #1951

Re: Assembler Help.

From Martin Bazley <martin.bazley@blueyonder.co.uk>
Newsgroups comp.sys.acorn.programmer
Subject Re: Assembler Help.
Message-ID <37e16fb452.martin@blueyonder.co.uk> (permalink)
References (4 earlier) <cd17bead52.cferris@cferris.freeuk.com> <pLwLr.592684$n02.359611@fx02.am4> <c9ec8aae52.cferris@cferris.freeuk.com> <TBSLr.788865$kM1.611131@fx18.am4> <00b34021-c874-4533-b2ad-9524c021663a@fr28g2000vbb.googlegroups.com>
Organization virginmedia.com
Date 2012-07-24 20:04 +0100

Show all headers | View raw


The following bytes were arranged on 24 Jul 2012 by Gazza :

> The first, LibASH creates a heap from HIMEM. This obviously won't work
> as is for a stand-alone executable. Is there an easy way to find out
> the equivalent, so I can install a heap at the top of the user's
> WimpSlot without having the calling program having to hard-wire a
> value on compile time.

SWI "OS_GetEnv"
STR R1,maxmemptr%

> The second, I need an equivalent of BASIC's MOD in asm. I can't see a
> direct instruction, so I'm guessing it's a combo of MUL and peeking at
> the flags, I'm guessing Carry, but could be wrong.

You're using the wrong language.  ARM code is notoriously devoid of any
divide function whatsoever.

Is the value you want to divide by a power of two?  You can use the
shift, AND and BIC instructions to perform the equivalent of division.
For example:

MOV R0,R0,ASR #1 ; divide by 2 (signed)
MOV R0,R0,LSR #1 ; divide by 2 (unsigned)
MOV R0,R0,LSR #2 ; divide by 4 (unsigned)
MOV R0,R0,LSL #3 ; multiply by 8 (signed and unsigned)
AND R1,R0,#3 ; R1 = R0 MOD 4
BIC R1,R0,#15 ; R1 = (R0/16)*16

And old faithful here:

ADD R0,R0,#3
BIC R0,R0,#3 ; word-align R0

-- 
  __<^>__   "Your pet, our passion." - Purina
 / _   _ \  "Your potential, our passion." - Microsoft, a few months later
( ( |_| ) )
 \_>   <_/  ======================= Martin Bazley ==========================

Back to comp.sys.acorn.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Assembler Help. Gazza <usenet@garethlock.com> - 2012-07-10 07:09 -0700
  Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-07-10 08:46 -0700
    Re: Assembler Help. Chris Johnson <chrisjohnson+news@spamcop.net> - 2012-07-10 18:06 +0100
      Re: Assembler Help. jgharston <jgh@arcade.demon.co.uk> - 2012-07-11 11:26 -0700
        Re: Assembler Help. cferris@freeRemoveuk.com.invalid - 2012-07-11 20:05 +0100
          Re: Assembler Help. jgharston <jgh@arcade.demon.co.uk> - 2012-07-11 15:16 -0700
          Re: Assembler Help. Steve Drain <steve@kappa.me.uk> - 2012-07-12 10:25 +0100
            Re: Assembler Help. cferris@freeRemoveuk.com.invalid - 2012-07-13 09:23 +0100
              Re: Assembler Help. Steve Drain <steve@kappa.me.uk> - 2012-07-13 11:16 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-07-24 05:17 -0700
                Re: Assembler Help. Gavin Wraith <gavin@wra1th.plus.com> - 2012-07-24 14:02 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-07-24 06:49 -0700
                Re: Assembler Help. Steve Drain <steve@kappa.me.uk> - 2012-07-24 15:03 +0100
                Re: Assembler Help. usenet@garethlock.com - 2012-07-24 08:21 -0700
                Re: Assembler Help. Steve Drain <steve@kappa.me.uk> - 2012-07-24 17:55 +0100
                Re: Assembler Help. Theo Markettos <theom+news@chiark.greenend.org.uk> - 2012-08-03 20:26 +0100
                Re: Assembler Help. cferris@freeRemoveuk.com.invalid - 2012-08-05 08:51 +0100
                Re: Assembler Help. Martin Bazley <martin.bazley@blueyonder.co.uk> - 2012-07-24 20:04 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-07-24 14:16 -0700
                Re: Assembler Help. Jeremy Nicoll - news posts <jn.nntp.scrap007@wingsandbeaks.org.uk> - 2012-07-24 22:34 +0100
                Re: Assembler Help. Chris Johnson <chrisjohnson+news@spamcop.net> - 2012-07-24 23:56 +0100
                Re: Assembler Help. Martin Bazley <martin.bazley@blueyonder.co.uk> - 2012-07-25 01:42 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-03 05:54 -0700
                Re: Assembler Help. Martin Bazley <martin.bazley@blueyonder.co.uk> - 2012-08-03 17:52 +0100
                Re: Assembler Help. "Barry Allen (news)" <evanallen@onetel.net.uk.invalid> - 2012-08-04 10:21 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-04 15:57 -0700
                Re: Assembler Help. cferris@freeRemoveuk.com.invalid - 2012-08-05 08:48 +0100
                Re: Assembler Help. Martin <News03@avisoft.f9.co.uk> - 2012-08-06 10:00 +0100
                Re: Assembler Help. Theo Markettos <theom+news@chiark.greenend.org.uk> - 2012-08-06 13:26 +0100
                Re: Assembler Help. Martin <News03@avisoft.f9.co.uk> - 2012-08-06 23:13 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-07 08:50 -0700
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-07 15:43 -0700
                Re: Assembler Help. Martin Bazley <martin.bazley@blueyonder.co.uk> - 2012-08-08 00:52 +0100
                Re: Assembler Help. usenet@garethlock.com - 2012-08-08 02:03 -0700
                Re: Assembler Help. jeffrey.a.doggett@gmail.com - 2012-08-08 02:19 -0700
                Re: Assembler Help. druck <news@druck.org.uk> - 2012-08-12 09:05 +0100
                Re: Assembler Help. Frank de Bruijn <zuiderduin@hotmail.com> - 2012-08-08 11:40 +0200
                Re: Assembler Help. Jeremy Nicoll - news posts <jn.nntp.scrap007@wingsandbeaks.org.uk> - 2012-08-08 11:34 +0100
                Re: Assembler Help. Justin Fletcher <gerph@gerph.org> - 2012-08-09 21:19 +0100
                Re: Assembler Help. druck <news@druck.org.uk> - 2012-08-12 09:08 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-14 05:17 -0700
                Re: Assembler Help. Chris Johnson <chrisjohnson+news@spamcop.net> - 2012-08-14 14:50 +0100
                Re: Assembler Help. Martin Bazley <martin.bazley@blueyonder.co.uk> - 2012-08-14 15:03 +0100
                Re: Assembler Help. Martin Bazley <martin.bazley@blueyonder.co.uk> - 2012-08-14 14:59 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-15 17:01 -0700
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-21 03:54 -0700
                Re: Assembler Help. Martin <News03@avisoft.f9.co.uk> - 2012-08-21 12:27 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-21 05:08 -0700
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-21 05:25 -0700
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-21 08:23 -0700
                Re: Assembler Help. druck <news@druck.org.uk> - 2012-08-21 18:19 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-21 14:20 -0700
                Re: Assembler Help. cferris@freeRemoveuk.com.invalid - 2012-08-22 09:07 +0100
                Re: Assembler Help. Gazza <usenet@garethlock.com> - 2012-08-22 05:28 -0700
                Re: Assembler Help. Steve Fryatt <news@stevefryatt.org.uk> - 2012-08-22 14:47 +0100
                Re: Assembler Help. druck <news@druck.org.uk> - 2012-08-22 23:11 +0100
                Re: Assembler Help. Martin Bazley <martin.bazley@blueyonder.co.uk> - 2012-08-29 18:36 +0100
                Re: Assembler Help. Jeremy Nicoll - news posts <jn.nntp.scrap007@wingsandbeaks.org.uk> - 2012-08-22 09:38 +0100
                Re: Assembler Help. jgh@arcade.demon.co.uk (Jonathan Graham Harston) - 2012-08-08 23:15 +0100
                Re: Assembler Help. Martin Bazley <martin.bazley@blueyonder.co.uk> - 2012-08-09 13:59 +0100
                Re: Assembler Help. Steve Drain <steve@kappa.me.uk> - 2012-08-10 15:50 +0100
  Re: Assembler Help. Frank de Bruijn <zuiderduin@hotmail.com> - 2012-07-11 08:30 +0200
    Re: Assembler Help. cferris@freeRemoveuk.com.invalid - 2012-07-11 09:26 +0100

csiph-web