RetroBrew Computers Forum
Discussion forum for the RetroBrew Computers community.

Home » RBC Forums » General Discussion » Multicomp 6809 and the Serial Ports
Re: Multicomp 6809 and the Serial Ports [message #6028 is a reply to message #6026] Fri, 01 March 2019 12:45 Go to previous messageGo to previous message
nealcrook is currently offline  nealcrook
Messages: 127
Registered: October 2015
Location: UK
Senior Member
I think that, to enlarge DD, you would either need to rebuild from source or use the toolshed tools to create a larger empty disk image and then copy everything from the existing boot disk onto it.

Next, you need to change the script that creates the SDcard image so that it will insert this new, larger image without overwriting the other disk images

Finally, you need to change the Nitros drive "descriptors" to understand the new SDcard block start address associated with the new (more widely-spaced) disks. You can hack them or rebuild from source. From level2/mc09l2/modules/makefile:

# SDOFFSET is the high 16 bits of the 24-bit block address at
# which the disk image starts on the SDcard. It must match
# the value used in the create_sd_image script.
dds0_80d.dd: mc09sdcdesc.asm
        $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 -DSDOFFSET=0x0280 -DDD=1

s0_80d.dd: mc09sdcdesc.asm
        $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 -DSDOFFSET=0x0280

s1_80d.dd: mc09sdcdesc.asm
        $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=1 -DSDOFFSET=0x0290

s2_80d.dd: mc09sdcdesc.asm
        $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=2 -DSDOFFSET=0x02A0

s3_80d.dd: mc09sdcdesc.asm
        $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=3 -DSDOFFSET=0x02B0


I don't know your level of familiarity with all this stuff so let me know if you need help or more detailed pointers. A simpler (though not so convenient) approach is to make the 4th disk larger - you can do this without trampling on any of the others or changing and start addresses.

Using the L2 image there is at least some indication that the serial ports should work. Specifically, in my emulator, which is using the "vdu" as /term, I confirmed that you should be seeing output on /t1. I assume that you're using (level2) from my SDcard image on the WIKI?

$ ./mc09-run-int                                                                                                          
Reading symbols from '../6809M.map'...                                                                                                                                                   
02:0x1F7E 8606                  LDA   #$06                                                                                                                                               
(dbg) c                                                                                                                                                                                  
6809 CamelForth v1.1  20 Mar 16                                                                                                                                                          
                                                                                                                                                                                         
OK NITROS9 NITROS9 BOOTKREL Boot Krn tb0...........................................................................................bKrnP2 IOMan Init RBF mc09sd DD                        D0 D1 D2 D3 SCF mc6850 Term T0 T1 PipeMan Piper Pipe Clock Clock2 Shell Date DeIniz Echo Iniz Link Load Save Unlink i2xo[uart0 stat wr: PC=0xc59d, addr=0x0000, w                       data=0x82]                                                                                                                                                                               
CNitrOS-9/6809 Level 2 V3.3.0                                                                                                                                                            
Multicomp09                                                                                                                                                                              
(C) 2014 The NitrOS-9 Project                                                                                                                                                            
**   DEVELOPMENT BUILD   **                                                                                                                                                              
** NOT FOR DISTRIBUTION! **                                                                                                                                       
Fri Jun  9 20:13:12 2017                                                                                                                                          
http://www.nitros9.org

* Welcome to NitrOS-9 Level 2 on the Multicomp09 *

       yyyy/mm/dd hh:mm:ss
Time ? 
June 09, 2017  20:16:42

Shell+ v2.2a 17/06/09 20:16:58

{Term|02}/DD:echo hello >/term
hello 

{Term|02}/DD:echo hello >/t0
[uart1 stat rd addr=0x00000002]
[uart1 stat wr: PC=0xc59d, addr=0x0002, wdata=0x83]
[uart1 stat rd addr=0x00000002]
[uart1 data wr of 0x68]
[uart1 stat rd addr=0x00000002]
[uart1 data wr of 0x65]
[uart1 stat rd addr=0x00000002]
[uart1 data wr of 0x6c]
[uart1 stat rd addr=0x00000002]
[uart1 data wr of 0x6c]
[uart1 stat rd addr=0x00000002]
[uart1 data wr of 0x6f]
[uart1 stat rd addr=0x00000002]
[uart1 data wr of 0x20]
[uart1 stat rd addr=0x00000002]
[uart1 data wr of 0x0d]
[uart1 stat rd addr=0x00000002]
[uart1 data wr of 0x0a]
[uart1 stat rd addr=0x00000002]

{Term|02}/DD:echo hello >/t1
[uart2 stat rd addr=0x00000004]
[uart2 stat wr: PC=0xc59d, addr=0x0004, wdata=0x83]
[uart2 stat rd addr=0x00000004]
[uart2 data wr of 0x68]
[uart2 stat rd addr=0x00000004]
[uart2 data wr of 0x65]
[uart2 stat rd addr=0x00000004]
[uart2 data wr of 0x6c]
[uart2 stat rd addr=0x00000004]
[uart2 data wr of 0x6c]
[uart2 stat rd addr=0x00000004]
[uart2 data wr of 0x6f]
[uart2 stat rd addr=0x00000004]
[uart2 data wr of 0x20]
[uart2 stat rd addr=0x00000004]
[uart2 data wr of 0x0d]
[uart2 stat rd addr=0x00000004]
[uart2 data wr of 0x0a]
[uart2 stat rd addr=0x00000004]

{Term|02}/DD:



Although I did both the Level 1 and Level 2 OS ports I actually have very limited expertese in NitrOS-9 so if you want to create an application disk image or some user notes or point out some bugs I'd welcome your contribution. It might even motivate me to tidy up some of the documentation and build notes on the WIKI and my Github WIKI

Yes, 25MHz 6809 is neat! Others have this design going even faster

Neal.
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: SDC_One - a contemporary computer with a a real, classic CPU
Next Topic: Now That I have my CP/M 68K board up and running, What Do I Do Now?


Current Time: Wed May 14 10:46:03 PDT 2025

Total time taken to generate the page: 0.00757 seconds