|
What's
available?
A 6502 assembler,
an Amélie system emulator, and a veroboard design
package.
There are also several whitepapers
available.
6502 assembler (2007/09/06)
(6502asm
described in detail)
There
are numerous 6502 assemblers available; however having grown
up on the BBC micro and RISC OS machines, I always use the
ampersand ('&') to denote
hex numbers, and I tend to use EQU commands for inserting
bytes. None of the other assemblers can do this, and I
didn't fancy booting up my BBC micro (or an emulation) in order
to assemble code. Therefore, it made sense that I'd "roll my
own"...

The assembler is simple to use, and the internals (if
you are interested in codey things) are equally simple. Part
of the design philosophy of Amélie, remember? You can read some in-depth
information
.
Note that at this time the assembler only
supports the original NMOS instruction set. The instructions
are loaded from a table file so you can alter or alias
instructions if you prefer, for example, to use "ADD" instead
of "ADC"...
-
6502asm for
DOS and Windows PRE-RELEASE (816K .EXE
installer) This is a
pre-release version of the 6502 assembler
for DOS, that
you may play with. This includes the PDF user
guide.
Note: you may not
(re)distribute this software by any media or any
method.
-
6502asm
for RISC OS PRE-RELEASE (20K Zip
archive) This is a
pre-release version of the 6502 assembler
for RISC OS, that you may play with.
It has not been tested, but should work without
problems as it was built directly from the DOS sources. Documentation
is not supplied; if you do not have it or the DOS version,
you should download the user guide PDF (below).
Note: you may not (re)distribute
this software by any media or any method.
-
6502asm user
guide (702K PDF) This is the
documentation for 6502asm as a PDF. Note that you
do not need to download this in addition to the
DOS software, as the document is
included. Note: you may
not (re)distribute this documentation by any media or
any method.
-
http://www.6502.org/ You'll
find lots of information on the 6502 processor, and the
65xx family, here.
AmélieEm (v0.01ah 2007/09/06, RISC
OS: v0.01ah 2007/09/06
) (AmélieEm
described in detail)
AmélieEm (or AmEm under
MS-DOS) is a complete software implementation of the
Amélie system. It has been designed to allow the
firmware to be designed and tested without the need to program
a new EPROM for each little modification.
AmélieEm features a powerful
tracing mode (called "Tracey"!) which allows single-stepping,
modification of registers and/or memory, disassembly, etc
etc...

You can read some
in-depth information, and also some details about how this software was ported to RISC
OS!
-
AmélieEm pre-release
(v0.01ah 2007/09/06, 200Kb
.EXE installer) This is a
pre-release version of
AmélieEm that you may try out to see how the
system works. Note: you
may not (re)distribute this software by any media or any
method.
-
AmélieEm for RISC OS pre-release
(v0.01ah
2007/09/06, 54Kb Zip archive) By a stroke
of genius, or insanity, I cobbled together an
emulation of conio along with the required DOS
calls. It is far from perfect, but it works!
I've wrapped this up as an executable application,
complete with light/dark DOSish colours and the obligatory
PC-ANSI display font. Click
here for more info on how this very-DOS software was
ported to RISC OS! Note: you may not
(re)distribute this software by any media or any
method.
The
licence file and guide is not supplied with the RISC OS
version. The licence is very simple - it is for your
personal enjoyment (!) only, it is NOT to be distributed,
and it is supplied strictly as-is. As for the
instruction guide... Click here to read it.
The emulation within AmélieEm is
missing the following:
-
Very very loose support for
NMIs. Amélie doesn't use them.
-
No support (whatsoever) for the BCD
maths features of the 6502. This shouldn't be hard to add
though...
-
No support for the advanced features of
the 6522 VIA (serial shifting, handshaking, Timer2, IRQs on
non-CA/CB interrupts).
-
Other stuff (just
to cover the hiccups of my troubled mind... :-)
).
-
Currently -
the ACIA and VIA emulation is fairly
basic. AmélieEm may be fun to play with
in Tracey, but not a lot else can be seen to happen at this time,
unless you plan to write yourself a BIOS... ...yup,
hopefully AmélieEm works enough to start, and run,
a BIOS. Though the appsys
code doesn't do much; but it will "fake" bump sensing and
send/receive via the serial port.
-
Here's what is new in this
release:
-
Support for 8Kb EPROMs (with support
for 4Kb EPROMs too).
-
Quick Save updated, larger EPROM image
size and ACIA details.
-
Various ACIA
bug-fixes.
-
[V]
keypress swaps between trace mode and application code
screens.
-
RISC OS DOS/CONIO
bugfixes.
-
Here's what is new in the previous
release(s):
-
You can programmatically byte
read/write to the final byte in every 1024 byte
block within the designated RAM allocation (16K).
Normally accesses beyond the official 2K memory area
are faulted; however this specific method will be
permitted to allow you to implement probing for available
memory. Note: This means there is wraparound - writes
to &1FFF will be
reflected in &07FF
(etc).
-
Pressing functions keys F1 to F6 will trigger
the appropriate "bump" behaviour, refer to the RickBot information for
specifics. Note: This is not (yet) reflected within
appsys, but your firmware code
will be able to pick up on
it.
-
Bug fixes - such as the screen now
redraws correctly after forcing a processor/emulator
reset. Note: Reset does not clear memory, nor does it
force the EPROM code to be reloaded. You can do
this by: 1, clear memory by setting all bytes to
zero (&0000 to
&FFFF); 2, reload
EPROM image; 3, call reset.
-
More complete ACIA implementation,
plus status visible within Tracey. Note: You cannot
Poke the ACIA registers, this will
instead permit you to tell the emulator whether or not a
serial lead in "connected" (state of !DSR and !DCD).
-
The Breakpoint
List now also lists
break-on-event(s)
defined.
- New in
both the RISC OS and DOS versions is the LED status and
clock is written to the display upon a refresh. There is
little else changed in the DOS version; quite a lot changed
in the RISC OS version.
VeroDes
VeroDes
is my veroboard (stripboard) design package. The version below
is an early version that you can try out. Final
versions are expected to be 'free' (as in gratis), but as
this is not strictly part of the Amélie
project, sources will not be available.

-
VeroDes has
its own page on my website...
This software requires Windows 95 (or
later) plus a number of runtime components which are
not supplied with the software (you'll need to
download them separately, if you require them).
Whitepapers
Here are a few whitepapers that have been
written to explain several facets of Amélie's
operation.
These documents were written
on an Acorn PocketBook II (rebadged Psion 3A organiser), and
printed via a Hewlett Packard PCL to PDF convertor. Thus they
are pleasingly small, rather than the 100s-of-kilobytes PDFs
that are generated under Windows...
- IRQ handling (5 pages,
21Kb PDF; preliminary)
This explains how the
IRQ system will work, and describes the BIOS features that
will, essentially, work from the IRQ
handler.
- Serial communications
(4 pages, 22Kb PDF; preliminary)
This explains
how the BIOS will implement serial communications, and how
transmitting data to a remote machine can be as simple as
dumping it into the output buffer; and receiving can be as
simple as waiting for a vector to be
called... |