Coco3 Core Released

User avatar
kathleen
Top Contributor
Posts: 421
Joined: Fri Jun 26, 2020 4:23 am
Location: Belgium
Has thanked: 243 times
Been thanked: 138 times

Re: Coco3 Core Released

Unread post by kathleen »

Pepeart wrote: Tue Jan 11, 2022 2:10 am The following cart games Robocop, Predator and Pitfall are not working, am I right? Thank you
This is totally correct, there is something not yet implemented in the core which prevents those games to run, I cannot recall what however.

So far, those games are only running under the RealCoco core

かすりん

Pepeart
Posts: 74
Joined: Thu Sep 17, 2020 3:21 am
Has thanked: 59 times
Been thanked: 5 times

Re: Coco3 Core Released

Unread post by Pepeart »

kathleen wrote: Tue Jan 11, 2022 6:01 am
Pepeart wrote: Tue Jan 11, 2022 2:10 am The following cart games Robocop, Predator and Pitfall are not working, am I right? Thank you
This is totally correct, there is something not yet implemented in the core which prevents those games to run, I cannot recall what however.

So far, those games are only running under the RealCoco core
Got it. Thank you
shodge
Core Developer
Posts: 21
Joined: Wed Jul 21, 2021 9:26 pm
Been thanked: 49 times

Re: Coco3 Core Released

Unread post by shodge »

Hi folks,
I just added a note to the readme.md file for the next release:
Note: This core requires the external sdram memory module to function.

Other changes in process...
-Stan
jca
Top Contributor
Posts: 1911
Joined: Wed May 27, 2020 1:59 pm
Has thanked: 145 times
Been thanked: 454 times

Re: Coco3 Core Released

Unread post by jca »

Running the update_all script using the old updater does not download the latest Coco3 core. Does this also happen when using the new downloader?
User avatar
Hodor
Posts: 142
Joined: Mon May 25, 2020 8:29 am
Has thanked: 379 times
Been thanked: 30 times

Re: Coco3 Core Released

Unread post by Hodor »

jca wrote: Tue Jan 25, 2022 6:39 pm Running the update_all script using the old updater does not download the latest Coco3 core. Does this also happen when using the new downloader?
No. I´ve recently used the latter and the core updates just fine.
Pepeart
Posts: 74
Joined: Thu Sep 17, 2020 3:21 am
Has thanked: 59 times
Been thanked: 5 times

Re: Coco3 Core Released

Unread post by Pepeart »

Predator and Robocop are now working!!! Super Pitfall & Rampage still dont boot up.
cathrynmataga
Posts: 114
Joined: Fri Aug 06, 2021 5:30 pm
Has thanked: 150 times
Been thanked: 20 times

Re: Coco3 Core Released

Unread post by cathrynmataga »

Been goofing with NitroOS9. It does seem to work, looks like some kind of Unix-like OS for the system. The VHD files with 6809 in the name seem to work if I pick CoCoSDC. The magic word is "DOS" -- type that in basic. The GIME versions come up in 80 columns. I don't think the mouse works? Anything that needs a mouse just gets stuck. TBH, I never had COCO3 ever, and this looks like a pretty deep rabbit hole.

http://lcurtisboyle.com/nitros9/nitros9.html

cathrynmataga
Posts: 114
Joined: Fri Aug 06, 2021 5:30 pm
Has thanked: 150 times
Been thanked: 20 times

Re: Coco3 Core Released

Unread post by cathrynmataga »

No wait, I got the mouse working with 'Use Mouse for Rt Joystk' -- I thought that didn't work, but I poked at it again and now it's working. Maybe just user confusion.

Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 195 times

Re: Coco3 Core Released

Unread post by Malor »

The 6809 CPU had some nice facilities for multitasking, which weren't used by the base ROM. I'm pretty sure that's what NitroOS was about.

I've never used it, even in emulation, but I read about it somewhere, probably Wikipedia.

Pepeart
Posts: 74
Joined: Thu Sep 17, 2020 3:21 am
Has thanked: 59 times
Been thanked: 5 times

Re: Coco3 Core Released

Unread post by Pepeart »

How do I load a .bas file? I tried loadm"pitfall2":exec and it doesnt work. I tried other .bas files with no luck either

MrMartian
Posts: 21
Joined: Wed Nov 24, 2021 4:04 pm
Has thanked: 18 times
Been thanked: 36 times

Re: Coco3 Core Released

Unread post by MrMartian »

Basic programs would just be: load "filename":run

loadm / exec is for binary files

shodge
Core Developer
Posts: 21
Joined: Wed Jul 21, 2021 9:26 pm
Been thanked: 49 times

Re: Coco3 Core Released

Unread post by shodge »

While it has been awhile, there is a new release from me... COCO3_20231023.rbf. Many changes and improvements to its overall functionality. Below is a list of changes but the highlights are - cycle accurate 6809 at up to 9.54Mhz - fix to Tom Mix Donkey King - Fix to obscure EOU OS9 bug - Fix to incorrect addressing of CARTs is full 32K ROM mode [Rampage and Pitfall carts work now]...

Detailed Changes:
CTF = Compile Time Feature...

  1. Interrupt system restored to previous code - improved compadibility.
  2. Changed to cycle accurate 6809 (Greg Miller) at speeds up to 9.56Mhz. [CTF]
  3. Recoded sdc and fdc to only have one instance of the wd1773.
  4. Re-added software disable in sdc [Ext 'g'].
  5. Recoded Cartridge bank switching to only exist when MiSTer slot 3 is selected. [removed soft multipak select]
  6. Moved CoCo Hardware RS-232 from always existing to only existing in multipak slot 1.
  7. Changed ADRS (SDS sig) decoding to = FF40-FF5f per hardware.
  8. Fixed coding problem in os9 driver llcocosdc to work with MPI properly. [CTF]
  9. Set default disk size to constant $555555 to fix os9 redirect problem. [CTF]
    10 Disabled GART [GIMEX hardware DMA] to prevent OS9 from detecting GIMEX. [CTF]
    11 Corrected missing begin statement in master timing loop.
  10. Fixed Donkey King DAPD issue in Tom Mix program [DPAD now moved joysticks to limits under dpad
  11. Fixed incorrect addressing of FE00-FEFF for CARTs which gets PITFALL and RAMPAGE working
  12. Updated MiSTer framework

What is next? Gary just sent me his next release... Hopeful integration soon...
-Stan

rcade
Posts: 119
Joined: Wed May 27, 2020 7:57 pm
Has thanked: 1 time
Been thanked: 17 times

Re: Coco3 Core Released

Unread post by rcade »

It seems like this core does not work properly with 32M SDRAM. You get the black/green screen but the computer never boots. It's fine in the exact same MiSTer with 128M SDRAM.

User avatar
kathleen
Top Contributor
Posts: 421
Joined: Fri Jun 26, 2020 4:23 am
Location: Belgium
Has thanked: 243 times
Been thanked: 138 times

Re: Coco3 Core Released

Unread post by kathleen »

@rcade,

To be honest, I do not know if the core Coco3 needs more than 32Mb SDRAM as my Misters have 128Mb each, but are you sure that you do not have a [coco3.rom] inside your folder [bootrom].
I'm asking this because owning 2 Mister with 128Mb, I had the same issue, on one it was working and on the other one it wasn't (black/green screen).
While I was sure that the setup was the same, it wasn't, I had the coco3.rom in the bootrom on one SD card. Once I removed it, It worked w/o any issue.

かすりん

rcade
Posts: 119
Joined: Wed May 27, 2020 7:57 pm
Has thanked: 1 time
Been thanked: 17 times

Re: Coco3 Core Released

Unread post by rcade »

I verified it. No changes at all other than swapping 32M for 128M and it works fine. Swap back to 32M, no boot. Same exact setup otherwise.
I put it in as an issue in Github.

rcade
Posts: 119
Joined: Wed May 27, 2020 7:57 pm
Has thanked: 1 time
Been thanked: 17 times

Re: Coco3 Core Released

Unread post by rcade »

Also, most text output becomes garbled and unreadable just after booting NitroOS9 kernel on most disks. It looks like it switches into a weird semigraphic mode...

shodge
Core Developer
Posts: 21
Joined: Wed Jul 21, 2021 9:26 pm
Been thanked: 49 times

Re: Coco3 Core Released

Unread post by shodge »

The coco3 core does not need more than 32M, however, since the core handles the sdram controller internally, the core would have to understand and make both modules work. I have 128MB and the SDRAM code I used was tailored around that. I do not have a 32M module at present and fixing this will likely be low on the fix list.

I am aware that a problem was introduced on the latest released version. Specifically, when switching to the text mode, it is often going to simi-graphics mode. This occurs in OS9 level1 games, OS9 level 2 with 32 character text ode screens, and some specific games like Contra. I'm presently working it identify the offending hardware code to fix this.

FYI,
-Stan

shodge
Core Developer
Posts: 21
Joined: Wed Jul 21, 2021 9:26 pm
Been thanked: 49 times

Re: Coco3 Core Released

Unread post by shodge »

Just a FYI.....
This text is specific to the problem specified earlier with some OS9 builds which boot into semi-graphics mode. Presented here is why and a temp solution. A better solution is in the works.

The MiSTer CoCo3 project is a port of CoCo3FPGA for the DE1 board by Gary Becker. This is from the documentation:
The only Semi-graphics (SG) mode supported with the CoCo3 was SG4. CoCo3FPGA supports all the original Semi-graphics modes supported by the Color Computer 1 and 2. In most cases, software written using the Semi-Graphics will run with out any modification. The one caveat is SG6. On the CoCo3, the settings bit used to enable SG6 was re-tasked to enable lower case text. To get around this limitation, a switch on the DE-1 is used, SW5. If a program is run that uses the SG6 mode, turn on SW5. Because the original setting bit enables lower case text, any program written to run with SG6 can also display lower case text.

Here the documentation is a bit out of date. The switch referenced also is used to turn on artifacting (4 color mode in COCO hires). This switch is set by going into the 'Video Settings' and turning on 'Artifact Color: On - SG4'. This switch is normally set 'ON' and there are no issues. However, in specific COCO3 programs using lower case [some OS9 builds] it causes the SemiGraphics SG6 to be enabled and results in a non-readable screen.

FIX
The short term simple solution for the current release build is to set ''Artifact Color: Off - SG4''. This instantly fixes the graphics problem for the OS9 builds. Turn it back on for the 4 color hires modes. I know its a bit of a pain...

Normally I would go into both a documentation fix and work a better solution but Gary already has one coded. It removed the artifact enable from the config bit and greatly improves artifacts along with enabling them full time. The bit will be retained as a compatibility bit only. This is the present direction of the build.

-Stan

shodge
Core Developer
Posts: 21
Joined: Wed Jul 21, 2021 9:26 pm
Been thanked: 49 times

Re: Coco3 Core Released

Unread post by shodge »

Release 20240204....

  1. For cycle accurate 6809, changed PH2 to cpu_cycle_ena. (Improve timing of control register writes)
  2. Changed PIA(s) addressing to allow complete mirror through FF00-FF3F
  3. Corrected usage of SG6 enable (SW5 in orig code) which allows the usage of SG6. Formerly it was used to
    enable artifacts. That is no longer true. For most compatibility it has be relabeled 'CoCo3 LC',
    and it default setting is Yes which is fully compatible with the CoCo3. [setting no allows SG6 mode].
    For some OS9 software this must be set to 'Yes' which is the default.
  4. Added 'Artifact Type' menu in 'Video Settings' menu. Settings are 'MESS', 'Simple', and 'NONE'. 'MESS'
    is the default and has improved fidelity over 'Simple' which was previously implemented in connection
    with SW5 [see above]. Again, the default should be used. The artifact emulation can be turned off
    by setting the option to 'NONE'. The 'Artifact Color Set' choice is only valid for 'MESS' and 'Simple'
    artifact settings.
User avatar
ron
Posts: 160
Joined: Sun May 24, 2020 7:02 pm
Has thanked: 70 times
Been thanked: 62 times

Re: Coco3 Core Released

Unread post by ron »

@shodge, Thanks very much for fixing CoCo3

dshadoff
Core Developer
Posts: 547
Joined: Sun May 24, 2020 9:30 pm
Has thanked: 20 times
Been thanked: 145 times

Re: Coco3 Core Released

Unread post by dshadoff »

shodge wrote: Tue Feb 06, 2024 2:43 am
  1. For cycle accurate 6809, changed PH2 to cpu_cycle_ena. (Improve timing of control register writes)

How did you realize that this was incorrect ? (was some software failing ?)
The 6809 is quite a popular CPU for arcades and other boards, so this change may be helpful to bring to other cores.

shodge
Core Developer
Posts: 21
Joined: Wed Jul 21, 2021 9:26 pm
Been thanked: 49 times

Re: Coco3 Core Released

Unread post by shodge »

dshadoff,

Sorry for not responding earlier. This was largely a observed needed change. In early CoCo3FPGA timing, PH2 was generated from the master timing loop as roughly corresponding to the 6809 E clock. With the MiSTer implementation, we use the external SDRAM and as such a new signal - cpu_cycle_ena is delayed to meet those requirements and as such, the change was needed to be global and not just for RAM access.

Its not really something which will help anyone else.

Again, sorry for the delay...
-Stan

shodge
Core Developer
Posts: 21
Joined: Wed Jul 21, 2021 9:26 pm
Been thanked: 49 times

Re: Coco3 Core Released

Unread post by shodge »

Release 20240514-004....

  1. Added support for cassette save. To use: A) You have to have a file [anyname.cas]
    which is larger than needed. B) Select the file through the UI Menu 'Save
    Cassette'. C)Set 'Cass Rwd=0 / Rec=1' to 1. D) Issue your 'CSAVE "NAME"'
    E) When done, set 'Cass Rwd=0 / Rec=1' to 0 to complete the write. The file can
    now be loaded or copied. Note a dummy file of a specific size can be created in
    the MiSTer SSH shell in the /media/fat/games/coco3 with the command:
    'truncate -s 65536 tapefileame.cas'. [Note do NOT use over 65536 file length]
  2. Fixed serial interrupt [6551] to not be functional on slot 3 [carts].
  3. Modification of sys_top.v to override use of USER_IO for HDMI - so it can be used
    for logic analyzer debug. This will only occur when `define Config_Debug is
    enabled in config.v.
  4. Fixed MUGS of powerup issue occurring on some MiSTer units.
  5. Fixed incorrect application of GIME_IRQ on legacy interrupts. Fixed race condition
    on reading IRQ status vs clearing the interrupt.
  6. Improved Castle of Tharoggad. App now loads but locks as the graphics animate. This
    change improved mmu usage through to CARTS.
  7. Builds now keep track of multiple builds in the same date. It shows as V240514-004 in
    the menus. Its also exposed to BASIC and a boot.vhd which can be enabled to autorun is
    supplied in the archive to show how it works.
  8. Additionally, on the boot.vhd disk, is a program which demonstrated how to load a font -
    IBMFONT.BAS. Run it and it maps a font much like the IBM font to the 80 column format.
    Also, a file called TESTRTC.BAS pulls the MiSTer RTC values exposed in BASIC to display
    a clock.
  9. Large improvement in the Timer function. Code closer emulates COCO3 Timer. Fixes
    Sliphead cart.
  10. In the 20231023 release the wd1773 instances were reduced to 1 for the FDC and 1 for
    the FDC. This saved space but introduced a bug when using multiple drives at the same
    time - like a copy command. This change was removed and the copy command works again.

To Do...

  1. Add Speech / Music cart
  2. Fix Castle of Tharoggad

This is mostly a maintenance release which adds cassette write capabilities.
-Stan

Post Reply