home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!ames!agate!stanford.edu!rutgers!bobsbox.rent.com!s4mjs!kc2wz!bob
- From: bob@kc2wz.bubble.org (Bob Billson)
- Newsgroups: comp.os.os9
- Subject: Weird problem with OS-9 ASM -- help?
- Summary: what did I do wrong
- Keywords: asm bug os9 help
- Message-ID: <115@kc2wz.bubble.org>
- Date: 22 Aug 92 03:42:10 GMT
- Distribution: na
- Organization: Color Computer 3: Tandy's 'game' machine
- Lines: 111
-
- Question for the net. I am using the OS-9 Level I assember ASM in the Motorola
- compatible mode. The code will eventually be burned into an EPROM to run on a
- single board 6809 computer.
-
- For some reason the RMB pseudo-op is not reserving a block of empty bytes
- at the end of the code. Here is the editted output of ASM. The deleted
- code is unimportant as far as the problem goes.
-
-
- Microware OS-9 Assembler RS Version 01.00.00 08/21/92 23:18:54 Page 001
- -
-
- 00012 opt m motorola compatible mode
- 00013 opt w91
- 00014 opt d87
- 00015 opt s
- 00016
- 00017 D 0000 setdp 0
- 00018
- 00019 2000 epromsiz equ 8192 eprom size
- 00020
-
- [stuff deleted]
-
- 00042 *
- 00043 * Part Initialize System
- 00044 * Notes System & User Stacks, Direct Page Pointer
- 00045 *
-
- 00047 0000 org $0
- 00048
- 00049 0000 start equ *
- 00050
-
- [much more stuff deleted]
-
- 00574 043C 0D0A fcb $0d,$0a
- 00575 043E 0000 fcb $00,$00
- 00576
- 00577 0440 endprgm equ *
- 00578
-
-
- Ok here is where the problem starts. The last 8 addresses (16 bytes) of
- the code has to be $E000. The space inbetween the end above and the last
- 16 bytes will be left unprogrammed for now. So I try to reserve bytes,
- but it doesn't work. Why not?
-
-
- 00579 *
- 00580 * last 16 bytes in EPROM have to be $E000
- 00581 *
- 00582
- 00583 0440 rmb epromsiz-(endprgm-start)-16
- 00584
-
- Notice bytes seem to have been reserved as the address counter is incremented
- properly. However, dump the resulting file shows this is not the case.
-
- 00585 1FF0 E000 fdb $e000
- 00586 1FF2 E000 fdb $e000
- 00587 1FF4 E000 fdb $e000
- 00588 1FF6 E000 fdb $e000
- 00589 1FF8 E000 fdb $e000
- 00590 1FFA E000 fdb $e000
- 00591 1FFC E000 fdb $e000
- 00592 1FFE E000 fdb $e000
- 00593 end
-
- 00000 error(s)
- 00000 warning(s)
- $0450 01104 program bytes generated
- $1BB0 07088 data bytes allocated
- $04A8 01192 bytes used for symbols
-
-
- In line 583 I could have just as easily said 'rmb epromsiz-*-16'. The result
- is the same.
-
- This is an edited output of the OS-9 DUMP utility.
-
-
- Addr 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 2 4 6 8 A C E
- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----------------
- 0000 10CE 1FFF CE0F FF4F 1F8B 4FA7 9D02 51A7 .N..N..O..O'..Q'
- 0010 9D02 4986 FFA7 9D02 41A7 9D02 4186 04A7 ..I..'..A'..A..'
-
- [stuff deleted]
-
- Addr 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 2 4 6 8 A C E
- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----------------
- 0400 6564 0D0A 4E6F 7465 2D20 3C77 3E20 7265 ed..Note- <w> re
- 0410 7072 6573 656E 7473 2077 6869 7465 7370 presents whitesp
- 0420 6163 6520 6368 6172 6163 7465 7273 203C ace characters <
- 0430 7370 6163 653E 2C20 3C63 723E 0D0A 0000 space>, <cr>....
- 0440 E000 E000 E000 E000 E000 E000 E000 E000 `.`.`.`.`.`.`.`.
- 0450
-
- Starting at $043E, there should be a large chuck of reserved bytes. Instead
- there are two bytes immediately followed by the $E000 bytes. Why isn't the
- assembler reserved the block of bytes?
-
- Anyone point out what I am doing wrong? Thanks for the help.
-
- Bob
-
- --
- Bob Billson, KC2WZ | internet: bob@kc2wz.bubble.org
- | kc2wz@amsat.org
- $nail: 21 Bates Way, Westfield, NJ 07090 | uucp: ...!uunet!kc2wz!bob
- C code. C code run. Run code run...<please!>
-