[Coco] Coco SDC Explorer 0.21

Barry Nelson barry.nelson at amobiledevice.com
Wed Nov 2 03:01:49 EDT 2016


> Darren A mechacoco at gmail.comĀ  <mailto:coco%40maltedmedia.com?Subject=Re%3A%20%5BCoco%5D%20Coco%20SDC%20Explorer%200.21&In-Reply-To=%3CCAE8FjTahLeQd1J69kRs%2Bw%3DrjYkLWUUXf%3DyB9rqh%3D-dD6zK%2BDUQ%40mail.gmail.com%3E>
> Tue Nov 1 22:04:24 EDT 2016
> On Tue, Nov 1, 2016 at 7:25 PM, Allen Huffman wrote:
> 
> > NIck, DOS boot will do the trick, but you will need it mounted in DRIVE 0.
> > Carl England's SuperBOOT would be ideal if he's ever made it available.
> >
> >
> 
> If it can be made to run from ROM (or a ROM loader which copies it into
> RAM), put it into one of the SDC flash banks. Then you can just enter RUN
> @bank.
> 
> 
> - Darren
I wrote the program below to load any bin file from ROM. You actually append the entire bin file including the headers to the compiled ROM code, the loader reads the bin file headers and loads the file to the proper location. I do see a possible problem though, after loading the bin and running it, SDC DOS will not be resident, no DOS, only Extended Color BASIC. I do not know if that will be an issue, though I suspect it may be.

        ORG        $C000
ADDRSS  EQU        9728     RAM LOCATION FOR CLRC000 ROUTINE
LOADER  LEAX       CLRC000,PCR Setup to copy CLRC000 routine
        LDY        #ADDRSS  Destination
CLRCPY  LDA        ,X+
        STA        ,Y+
        CMPY       #ADDRSS+CLREND-CLRC000
        BLE        CLRCPY
* STORE ZEROS AT $C000 IN RAM THEN SET ROM MODE AGAIN AND RETURN
        JSR        ADDRSS
        LDA        #85      SET WARM RESET 
        STA        113 
        LDD        #32960   SET EXTENDED BASIC RESET VECTOR 
        STD        114 
        JSR        47452    SET UP PARAMETERS FOR BASIC 
        LDA        #53      RESTORE INTERRUPTS 
        STA        65283    THAT ARE 
        LDA        #52      DISABLED ON 
        STA        65315    CARTRIDGE AUTO START 
        PSHS       U
BASIN   LEAU       BINLOD,PCR
        LDY        3,U      TARGET ADDRESS
	LEAX       5,U      START OF ML
        LDD        1,U      LENGTH
        ADDD       3,U      CALCULATE END ADDRESS
        PULS       U
        STD        733      STORE END ADDRESS
MLCOPY  LDA        ,X+      COPY ML PROGRAM TO RAM
        STA        ,Y+
        CMPY       733
        BLT        MLCOPY
        LDY        3,X      GET EXEC ADDRESS
        CLRA
        STA        112      SET CONSOLE IN BUFFER FLAG 
        JMP        ,Y
* THIS SUBROUTINE STORES A ZEROS AT $C000 IN RAM
* THIS IS NEEDED FOR A COCO 3
* IT IS COPIED TO RAM BEFORE BEING CALLED
CLRC000 CLRA
	STA        $FFDF
        LDX        #$C000
CLRLOOP STA        ,X+
        CMPX       #$C0FF
        BLE        CLRLOOP
        STA        $FFDE
        RTS
CLREND  EQU        *
BINLOD  EQU        *
        END        LOADER
*       BIN file data including headers goes here.




More information about the Coco mailing list