09/04/10: CoCo 2 boot up sequence by plainsteve, | Category: General, Programming | 5 comments - (Comments are closed)

CoCo 2 boot up sequence

Is there information somewhere about how to set up the CoCo hardware? Normally the BASIC ROM does this, right? I am making a cartridge and so need to do it myself from the cart.

Thanks!

This post was submitted by plainsteve.

5 comments to CoCo 2 boot up sequence

  • Robert Gault

    Your best bet is to study the ROM code in the “Unralvelled” series. In general, the PIA’s must be set, the SAM and 6847 set for video mode, and any other selectable settings such as interrupts, vectors, clock speed, etc.

    Keep in mind that most of this will be done for you before the Coco even looks to see if there is a ROM pak present. You will only need to change settings which are required for your pak.

    • plainsteve

      Actually, the cartridge is the bus master. At power-up the cartridge will assert /HALT and disable the CPU before it does much, if anything. Thus, the cartridge needs to configure everything necessary for a game to run: screen, sound, DRAM, PIAs, whatever. I will look at the Unravelled thing. Thanks!

  • plainsteve

    Help! I can’t post a new topic. When I click on “Post Something” it brings up a page which says [tdomf_form1] with no actual form.

  • beretta42

    plainsteve:

    IIRC, The most carts (excluding the disk controller) don’t use the /halt line. Autostarting carts force the /firq line low, to indicate they are “there” to basic rom. Basic rom, does indeed do a bunch of setup stuff (pia’s, VDA, etc…) before attempting to exec the cart. I know that the CoCo2 roms, however, leave the keyboard pia in a weird state. I needed to do this:

    ;; turn on coco2 irq int (needed for ROM)
    ldb 0xff03
    orb #1 ; enable vsync interrupt
    stb 0xff03

    Specifically for a ROM boot of my multi-source booter to get the coco2′s vsync irq firing. This is not needed for booting from cassette or disk or on a CoCo3, however.

    There maybe other startup-state differences, but I have not encountered them (yet). I’m sure there’s a few more differences, but an intensive review of S.A.’s Unravelled should clarify!

    –beretta

    • plainsteve

      I really appreciate your and Robert’s replies. I have looked at the unraveled book and it was INDISPENSABLE for getting my cartride to work.

      I have other questions to ask about my game cartride project, which has an 8-core Propeller microcontroller on board. However, I can’t ask them because when I go to make a new post it doesn’t show a form! :_(