Complete list of Oric Atmos adreeses

Here you can ask questions or provide insights about how to use efficiently 6502 assembly code on the Oric.
User avatar
coco.oric
Squad Leader
Posts: 720
Joined: Tue Aug 11, 2009 9:50 am
Location: North of France
Contact:

Complete list of Oric Atmos adreeses

Post by coco.oric »

Dears,

I'm searching a full list of hardware adresses for the Atmos.
It seems that there's no full list available (from page 0 to rom adresses)

Does anyone has it ?
(same for Oric-1)
coco.oric as DidierV, CEO Member
Historic owner of Oric, Apple II, Atari ST, Amiga
User avatar
Dbug
Site Admin
Posts: 4444
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Complete list of Oric Atmos adreeses

Post by Dbug »

The only "hardware addresses" are the page 3, the rest is standard 6502 layout with $00-$FF for the Zero Page, $100 to $1FF for the Processor Stack, and the $FFFA-$FFFF zone containing three pointers used by the 6502 to deal with RESET/NMI/IRQ operations.

Page 3 is where you address the VIA to access the printer, keyboard and YM chip.
User avatar
jbperin
Flight Lieutenant
Posts: 480
Joined: Wed Nov 06, 2019 11:00 am
Location: Valence, France

Re: Complete list of Oric Atmos adreeses

Post by jbperin »

coco.oric wrote: Fri Jun 12, 2020 6:00 am I'm searching a full list of hardware adresses for the Atmos.
As Dbug says, hardware adresses are all on page 3

Here are a few adresses that we can find here:

http://miniserve.defence-force.org/viewvc/projet1/users/chema/1337/TINE/keyboard.s?view=markup

Code: Select all

#define        via_portb               $0300 
#define            via_ddrb                                $0302        
#define            via_ddra                                $0303
#define        via_t1cl                $0304 
#define        via_t1ch                $0305 
#define        via_t1ll                $0306 
#define        via_t1lh                $0307 
#define        via_t2ll                $0308 
#define        via_t2ch                $0309 
#define        via_sr                  $030A 
#define        via_acr                 $030b 
#define        via_pcr                 $030c 
#define        via_ifr                 $030D 
#define        via_ier                 $030E 
#define        via_porta               $030f 
As I understand the thing ... hardware stuff are accessed through the VIA .. so the only adresse to know is the VIA one.
User avatar
kenneth
Squad Leader
Posts: 515
Joined: Fri Nov 26, 2010 9:11 pm
Location: France PdD
Contact:

Re: Complete list of Oric Atmos adreeses

Post by kenneth »

These addresses are the same 16 times into page 3
For example #303 is the same as #313, #323....#3F3.
Exept if a device is connected on the expansion port.
User avatar
coco.oric
Squad Leader
Posts: 720
Joined: Tue Aug 11, 2009 9:50 am
Location: North of France
Contact:

Re: Complete list of Oric Atmos adreeses

Post by coco.oric »

Thanks a lot, i've already list via adresses. My question was mainly for page 2 and eventually some others.
I'm on going to purpose a patch to 6502bench software
coco.oric as DidierV, CEO Member
Historic owner of Oric, Apple II, Atari ST, Amiga
User avatar
mikeb
Flight Lieutenant
Posts: 282
Joined: Wed Sep 05, 2018 8:03 pm
Location: West Midlands, UK
Contact:

Re: Complete list of Oric Atmos adreeses

Post by mikeb »

If you're talking your own software, in machine code, with no BASIC/ROM support (e.g. games that take over the whole machine), you can use page 0,2 for whatever you like. Nothing is defined or fixed (except for the ROM pointing to an IRQ and NMI routine expected to be in page 2 -- you could just place an RTI there and be done with it, or a JMP to your handler) ;)

If you're using the BASIC ROM, then a lot of page 0/page 2 becomes "defined" by what's in the ROM. Leycester Whewell's "Advanced User Guide" gives a good list of these addresses. The more facilities you leech from the BASIC ROM, the more addresses will become "used" rather than "trashable"

I can't speak for the various disc systems, which no doubt have areas of RAM that they expect to use without interference.
User avatar
Symoon
Archivist
Posts: 2307
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France

Re: Complete list of Oric Atmos adreeses

Post by Symoon »

I found that L'Oric à Nu, completed by, as Mike suggested, the Advanced User Guide give together a good idea of what is used and how (although IIRC not 100% complete).

That is for a "naked" Oric (no expansions, no disk drive, … Mike is right - do I have to say that actually :p )
User avatar
iss
Wing Commander
Posts: 1641
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Complete list of Oric Atmos adreeses

Post by iss »

coco.oric wrote: Fri Jun 12, 2020 3:27 pm Thanks a lot, i've already list via adresses. My question was mainly for page 2 and eventually some others.
I'm on going to purpose a patch to 6502bench software
About 6502bench: This is absolutely great tool and any Oric related modifications and additions will be amazing and helpful. The only drawback for me is that it's Windows only :? Do you know that you can define your own list of memory locations and export/import them across your projects? (i.e. no special modifications in 6502bench are required).

Else I think @coco.oric asks for description of pages 0 and 2 related to BASIC ROM which can be found in the famous ROM 1.1b disassembly (attached for your convenience). Unfortunately the PDF format is not very useful when is comes to copy/paste code fragments to text files because it's formatted in tables and selection runs by columns :(. It will be great if someone convert this PDF to HTML, so when clicking on JSR $XXXX to follow a hyperlink to address $XXXX - exactly what 6502bench does in its exports!

EDIT: Here is an example of "hyperlinked" BD500 ROM disassembly generated with 6502bench.
Attachments
OricAtmosROM11.pdf.zip
(1.69 MiB) Downloaded 325 times
User avatar
Dbug
Site Admin
Posts: 4444
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Complete list of Oric Atmos adreeses

Post by Dbug »

I'm searching a full list of hardware adresses for the Atmos.
So I guess the question was not about "hardware addresses" but about "locations used by the system".
User avatar
ibisum
Wing Commander
Posts: 1646
Joined: Fri Apr 03, 2009 8:56 am
Location: Vienna, Austria
Contact:

Re: Complete list of Oric Atmos adreeses

Post by ibisum »

There are a few things an Oric developer needs: Knowledge of the Zero Page and what's on it, and an understanding of how to access ROM routines when needed.
User avatar
coco.oric
Squad Leader
Posts: 720
Joined: Tue Aug 11, 2009 9:50 am
Location: North of France
Contact:

Re: Complete list of Oric Atmos adreeses

Post by coco.oric »

fine, thanks for your feedbacks.

I've "oric a nu" and "oric advanced user guide" books ; so i'll be able to collect these adresses soon
Do you know that you can define your own list of memory locations and export/import them across your projects? (i.e. no special modifications in 6502bench are required).
Yes. However, it'll be a good thing to update the project with these oric functions
coco.oric as DidierV, CEO Member
Historic owner of Oric, Apple II, Atari ST, Amiga
User avatar
Steve M
Squad Leader
Posts: 787
Joined: Fri Mar 24, 2006 3:33 am
Location: Cumbria, UK
Contact:

Re: Complete list of Oric Atmos adreeses

Post by Steve M »

Didn't you get the Bob Maunder book from me? That has Oric-1 ROM disassembly amongst other details.
User avatar
coco.oric
Squad Leader
Posts: 720
Joined: Tue Aug 11, 2009 9:50 am
Location: North of France
Contact:

Re: Complete list of Oric Atmos adreeses

Post by coco.oric »

Didn't you get the Bob Maunder book from me? That has Oric-1 ROM disassembly amongst other details.
Hello Steve, i've this one (as Advanced User Guide from Leycester Whewll that i prefer, it's more detailed)
Firstly, I intend to find a txt file done.
coco.oric as DidierV, CEO Member
Historic owner of Oric, Apple II, Atari ST, Amiga
User avatar
mikeb
Flight Lieutenant
Posts: 282
Joined: Wed Sep 05, 2018 8:03 pm
Location: West Midlands, UK
Contact:

Re: Complete list of Oric Atmos adreeses

Post by mikeb »

coco.oric wrote: Sat Jul 04, 2020 9:57 pm (as Advanced User Guide from Leycester Whewll that i prefer, it's more detailed)
The Bob Maunder one (Oric-1 Companion?) has the 1.0 ROM "disassembled" but IIRC there are no comments, and I believe it misses some of the nuance/detail e.g. routines with entry points half way through an instruction and other hacks, that were highlighted in Rambling In The Rom etc.

AUG/LW is the 1.1 (Atmos) ROM with comments, and is more useful even if it does only apply to the 1.1 ROM :)
User avatar
Steve M
Squad Leader
Posts: 787
Joined: Fri Mar 24, 2006 3:33 am
Location: Cumbria, UK
Contact:

Re: Complete list of Oric Atmos adreeses

Post by Steve M »

Yes, the Oric-1 Companion. That's the only book I know that has the V1.0 details.

Rambling in the ROM combined both ROMs but was never finished. He got very close and I'd hoped he'd contribute to Rhetoric to finish the project, but I think his new work took over.
Two books of the Rambling.... articles were made. It combines the ROM detail but leaves out the preamble rambling! I might scan these one day.
I was thinking of scanning the 3rd part and trying to finalise it but I really don't have the knowledge to do it properly.
Post Reply