6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Mon Apr 29, 2024 2:52 pm

All times are UTC




Post new topic Reply to topic  [ 12 posts ] 
Author Message
 Post subject: OSI Assembler Editor
PostPosted: Mon May 06, 2013 4:14 pm 
Offline

Joined: Mon May 06, 2013 3:56 pm
Posts: 20
Hello. I have a Micro UK101 built and running really well. It's really a nostalgia trip for me as I was one of those who built a Compukit UK101 in 1979, and don't still have it. The Micro UK101 has the Extended Monitor, Microsoft Basic (without garbage collection bug) and Cegmon modified to use a Terminal at 19200bps. I can successfully load OSI's Assembler Editor and run it, but it takes an age to load via 'paste to host'. It appears to sit from $0240 - $1400. Does anyone have this neat assembler in Assembler source code so I can re-assemble for an address in my EEprom. I have Ram from $0000 - $7FFF. ACIA at $8000 - $8001 and EEprom from $9000 - $FFFF.I have $D000-$EFFF free in my Eprom which is more than enough for the Assembler. If anyone can suggest a better assembler I can run from My EEprom, please let me know.
TIA Paul


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Tue Dec 02, 2014 8:01 am 
Offline

Joined: Mon Dec 01, 2014 7:53 pm
Posts: 5
It is possible to relocate the OSI assembler editor, however to do this you need to realise that it's not written in 6502 assembly language. It is written in a kind of intermediate code (a sort of pseudo-code) which is executed by an interpreter written in 6502 machine-code. So in order to relocate it, the addresses in the "psudo op-codes" need to be changed by hand. Does anyone know how to get a copy of this software? A search of the web has proved fruitless.


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Wed Apr 29, 2015 10:08 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10793
Location: England
Hi Dave, Paul, welcome!

Could one of you perhaps share the binary for this assembler editor - I can't even find that! It might be amenable to disassembly.

Edit: looks like it's part of OS-65D, and there's
- a disk image at http://osi.marks-lab.com/
- a manual at http://www.osiweb.org/manuals/OS-65D_V3 ... manual.pdf
- a tutorial at https://archive.org/stream/bitsavers_oh ... 0/mode/2up

Cheers
Ed


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Thu May 14, 2015 6:08 pm 
Offline

Joined: Mon Dec 01, 2014 7:53 pm
Posts: 5
Many thanks for the links, Ed. Managed to recover a copy of the assembler/editor from the disk image, although it's a bit different from the UK101 version and hence required some modification. The OS-65D manual only contains a couple of generic pages about the assembler/editor, and it refers to a separate manual for this software. Perhaps someone has a copy of the manual and can share it online. If I manage to develop any listings etc worth sharing, I'll put them online in due course...

Dave


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Thu May 14, 2015 6:40 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10793
Location: England
Well done Dave! I confess I didn't even start to try, beyond running 'strings' on the disk image and looking for likely things.


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Tue May 26, 2015 11:59 am 
Offline

Joined: Mon Dec 01, 2014 7:53 pm
Posts: 5
Here is a version of the UK101 assembler/editor which occupies memory from $0240 to $1200.
There is an assembler source listing, so it can be reassembled at any address.

In the absence of a manual, here are the commands available from the command-line:

‘P’ lists lines of source code:
P
P a–
P –b
P a–b
You can also separate these line numbers or line ranges by commas.
For example, P 20,120 prints out lines 20 and 120 only, while
P 20, 140-160 prints out line 20, and all lines from 140 to 160.

‘R’ renumbers the source code, and prints the number of the next line.

‘D a–b’ deletes lines from the source code.

‘A’ produces an assembly listing, and ‘A2’ produces object code in
hex checksum format.

‘I’ clears the assembler source program; it prompts ‘INIZ?’, and if
you answer ‘Y’, this confirms that the source program is to be deleted.

‘L’ turns on the UK101 load flag.

‘S’ turns on the UK101 save flag.

The object code, in hexadecimal checksum format, is at http://www.decayaitch.co.uk/obj.txt
The assembler source code, which can be reassembled at any address, is at http://www.decayaitch.co.uk/source.txt
The assembler listing is at http://www.decayaitch.co.uk/listing.txt
The object code, in a form that can be loaded into the UK101 machine-code monitor, is at http://www.decayaitch.co.uk/assembler.txt


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Tue May 26, 2015 12:32 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10793
Location: England
Great work!


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Fri Sep 04, 2015 4:25 pm 
Offline

Joined: Mon Dec 01, 2014 7:53 pm
Posts: 5
The manual for the original version of the software is at

http://www.decayaitch.co.uk/manual.pdf

This differs from the version posted above; for details of the locations used to define the workspace used for text and symbol table storage, see the end of the assembler listing.


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Wed Jul 12, 2017 5:03 pm 
Offline

Joined: Mon May 06, 2013 3:56 pm
Posts: 20
Excellent work Dave. If I wanted to re-assemble the source for my particular memory map, which assembler should I use. The source is far too big to load into my MicroUK101 even with 32k memory. Did you use A65 or one of the others?


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Fri May 18, 2018 3:51 pm 
Offline

Joined: Mon Dec 01, 2014 7:53 pm
Posts: 5
In the version of the assembler posted above, the assembler itself occupies memory from $0240 to $0FDC and the assembler source text can use memory from $0FDD to $1FFF. The end of memory value of $1FFF is set up in line 1140, and the start address for the assembler of $0240 is set up in line 1160. The last 8 bytes of the assembler (starting at $0FD5) consist of four 2-byte values: the offset used for assembly to memory using A3, the start of available source text memory, the end of available source text memory, and the end of the assembler source text.

Here is a slightly different version set up so that the assembler is at the top of memory, and lower addresses are used for the source text. In each case, there are three files: the source code, the object code, and the object code in a form that can be loaded into the UK101 machine-code monitor. In all versions of the source text, the start address is set up in line 1160:

Source text from $0240 to $125F, assembler from $1260 to $1FDC: http://www.decayaitch.co.uk/source1260.txt, http://www.decayaitch.co.uk/obj1260.txt, http://www.decayaitch.co.uk/assembler1260.txt
Source text from $0240 to $325F, assembler from $3260 to $3FDC: http://www.decayaitch.co.uk/source3260.txt, http://www.decayaitch.co.uk/obj3260.txt, http://www.decayaitch.co.uk/assembler3260.txt
Source text from $0240 to $525F, assembler from $5260 to $5FDC: http://www.decayaitch.co.uk/source5260.txt, http://www.decayaitch.co.uk/obj5260.txt, http://www.decayaitch.co.uk/assembler5260.txt
Source text from $0240 to $725F, assembler from $7260 to $7FDC: http://www.decayaitch.co.uk/source7260.txt, http://www.decayaitch.co.uk/obj7260.txt, http://www.decayaitch.co.uk/assembler7260.txt
Source text from $0240 to $925F, assembler from $9260 to $9FDC: http://www.decayaitch.co.uk/source9260.txt, http://www.decayaitch.co.uk/obj9260.txt, http://www.decayaitch.co.uk/assembler9260.txt
Source text from $0240 to $B25F, assembler from $B260 to $BFDC: http://www.decayaitch.co.uk/sourceb260.txt, http://www.decayaitch.co.uk/objb260.txt, http://www.decayaitch.co.uk/assemblerb260.txt

Not sure what assembler to recommend to assemble the code - I'm using an updated version of the OSI assembler which runs on a PC. It is compiled and run as a C program.


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Tue Jun 12, 2018 9:57 am 
Offline

Joined: Mon May 06, 2013 3:56 pm
Posts: 20
Hi Dave,
Apologies for not replying sooner...only just seen your post. Thanks for this. I'm hoping to re-assemble so it sits in my spare rom space. Is there any chance you could share your PC version of the OSI Assembler. That would be awesome.

Kind Regards,
Paul


Top
 Profile  
Reply with quote  
 Post subject: Re: OSI Assembler Editor
PostPosted: Sun Jun 17, 2018 9:03 pm 
Offline

Joined: Mon May 06, 2013 3:56 pm
Posts: 20
Hi Dave,
Could i take you up on your kind offer of the OSI modified assembler you run on your PC please? It would certainly help me assembling the source you very kindly supplied for the original OSI assembler so i can have it in ROM on my DIY 6502.

Kind Regards,

Paul


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 12 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 24 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: