Jump to content
mizapf

New MAME release

Recommended Posts

1 hour ago, klrw111-78 said:

Went back to .224 from .225 since I had problems with HRD4000 working correctly on .225. 

I did not change anything in the Horizon emulation.

 

But I noticed that there was a commit "Got rid of global_alloc/global_free", not applied by me but by another dev. What problems did you have? If this is a regression I have to fix it.

Share this post


Link to post
Share on other sites
I did not change anything in the Horizon emulation.
 
But I noticed that there was a commit "Got rid of global_alloc/global_free", not applied by me but by another dev. What problems did you have? If this is a regression I have to fix it.

After successfully loading ROS842C, I start to setup the RAM disks. Choose 5, name, format, yes everything appears ok. After entering to go to next disk, all info just entered for disk 5 disappears. You can still enter info for disk 6 and it works ok. After quitting config, disk 5 exists with total size being a negative value. Nothing can be copied to it. Disk 6 works ok.

Tried it on 2 different Macs same result. Then deleted nvram info for slots and tried again with same results


Sent from my iPad using Tapatalk

Share this post


Link to post
Share on other sites

Confirmed. In fact, it was my fault after all, but it happened when I added the SID master, without doing anything with the Horizon. Sometimes there are funny coincidences, like here, which have a totally unexpected result.

 

It's been quite a while that I learned about the Horizon. Before I go through all docs again:

 

- In the HRD4000 manual, the CRU addresses are listed differently than in earlier releases (2000, 3000). What is the difference between "1400" (switch 5) and "1400 Phoenix #1" (switch 2)? (same with 1600)

- J4 is used for single or dual ramdisk configuration, as I understood. Page 2 mentions that as the Phoenix mod, but what does it mean for the TI mode?

- I am a bit confused about how many CRU bases are used for the dual ramdisk. I read that the Phoenix mod uses two ramdisks on the same base, but what about the TI mode?

- The ROS manual does not mention the Phoenix mod at all. Is it still there?

 

 

  • Like 3

Share this post


Link to post
Share on other sites
54 minutes ago, mizapf said:

Confirmed. In fact, it was my fault after all, but it happened when I added the SID master, without doing anything with the Horizon. Sometimes there are funny coincidences, like here, which have a totally unexpected result.

 

It's been quite a while that I learned about the Horizon. Before I go through all docs again:

 

- In the HRD4000 manual, the CRU addresses are listed differently than in earlier releases (2000, 3000). What is the difference between "1400" (switch 5) and "1400 Phoenix #1" (switch 2)? (same with 1600)

- J4 is used for single or dual ramdisk configuration, as I understood. Page 2 mentions that as the Phoenix mod, but what does it mean for the TI mode?

- I am a bit confused about how many CRU bases are used for the dual ramdisk. I read that the Phoenix mod uses two ramdisks on the same base, but what about the TI mode?

- The ROS manual does not mention the Phoenix mod at all. Is it still there?

 

 

@FALCOR4 put together documentation that might help answer the questions.  I believe it is posted in the 4000B thread.   (Phoenix was deprecated in the late 80s from a Geneve boot/Geneve OS/software perspective but still configurable at the hardware level.) 

 

@mizapf here is a link to the forum post containing the doc I mention above.

 

  • Like 1

Share this post


Link to post
Share on other sites

Thanks! That looks very helpful indeed. And a relief to my eyes, not forcing them to decipher badly photocopied text.

  • Like 2

Share this post


Link to post
Share on other sites

I assume that the problem introduced in Vn .225 is also present in Vn .226 which would render them suspect with regards to proper Horizon function in both.

Share this post


Link to post
Share on other sites

Yes. If you use a Horizon, please stay with the 0.224 release. Sorry for the inconvenience. It should be fixed with the next release by the end of November (0.227).

 

And an appeal to all MAME users: If you spot a regression (something stopped working from one release to the next), please inform me as soon as possible so that the error can be fixed by the next release.

  • Like 2

Share this post


Link to post
Share on other sites
Yes. If you use a Horizon, please stay with the 0.224 release. Sorry for the inconvenience. It should be fixed with the next release by the end of November (0.227).
 
And an appeal to all MAME users: If you spot a regression (something stopped working from one release to the next), please inform me as soon as possible so that the error can be fixed by the next release.

I upgraded from an earlier version to .225 when I was attempting to get an emulated IDE working a few weeks ago. After getting IDE working tried to get HRD setup to no avail. Thought initially was an issue with my MacBook (like the non-working right arrow key) since HRD had worked in previous version. Will be more prompt in reporting in future.


Sent from my iPad using Tapatalk
  • Like 2

Share this post


Link to post
Share on other sites

Just to give a short idea why the SID Master broke the Horizon in MAME:

 

The SID Master requires me to propagate all CRU accesses to the P-Box, unlike all other cards, because it deactivates itself when an access to CRU 1xxx is done. In particular, when the 9901 in the console is accessed, the SID Master is activated again. I let the access be consumed by the 9901, so it was not visible in the box, so I changed it, believing that no PEB card would be bothered (because I have to check the CRU address anyway).

 

However, there was a glitch in the Horizon card: When Phoenix was turned off, I set its CRU address to 0000. And to check whether some card is accessed, I'm doing a test like "if ((address & 0xff00)==myaddress)".

 

You see what happened...

Share this post


Link to post
Share on other sites

I saw the manual is about the HRD4000B. So this is yet a newer version of the HRD. I'll see how I can pack all variants into the emulation, including the HRD2000. Right now it is only the 4000.

 

Some questions:

1. The only difference between HRD4000 and HRD4000B is the switchable DSR bank, right? (CRU bit 14)

2. How do HRD3000 and HRD3000B differ?

3. Is the HRD4000(B) the only HRD that decodes AMA/B/C?

4. Is "HRD2000" = "HRD+ Series 2000?"

5. Is there any further difference between HRD+ and HRD2000 besides the stacking of control chips?

Share this post


Link to post
Share on other sites

Also, do we have better schematics than these hand-drawn ones of the HRD4000 (from the "Construction Guide")?

Share this post


Link to post
Share on other sites

As I see that people are using the Horizon emulation, a heads-up: The emulation will be fixed for the next release; I am doing some more tests to find last glitches. However, you should definitely do a backup of your Horizon ramdisks to disks before upgrading! I cannot guarantee that the old NVRAM save file will be loaded by the new emulation. It is possible that it does, but only if you set the exact same capacity.

 

If the old file fails to load, it will be replaced by an empty one when you close the emulation. (You're doing regular backups anyway, I know.)

 

I gues this could probably be useful to know.

  • Thanks 1

Share this post


Link to post
Share on other sites

Hi mizapf!

Are there any comments files for our TI computers? This code annotations are supposed to allow comments next to the disassembled cpu memory addresses.

I played around for a few minutes with this features and it seems nice.

Would make sense to have this added for the first 8k of the 99/4(A) and for the 99/8 where we have the full source code with the original comments by the TI devs.

And an created comment is not lost if you turn off mame. once saved to file it is used and shown whenever you start the machine in mame in debug mode.

 

\comments\tomy.cmt

Quote

<?xml version="1.0"?>
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
<mamecommentfile version="1">
    <system name="tutor">
        <cpu tag=":maincpu">
            <comment address="46642" color="16711680" crc="73FC1CE5">
                jl   cru61a            if no match possible
            </comment>
        </cpu>
    </system>
</mamecommentfile>

 

Some small things I did wonder about.

If you do add a comment via the debug window, it gets lowercased.

The actual created file seems to use some kind of crc. Not sure which one it is using, which kind of blocks creating such a file outside of the debug window with some external tool.
Using some external tool to create the file would bypass the lowercasing problem.

 

Share this post


Link to post
Share on other sites

Fascinating (lifting an eyebrow).

 

No, honestly, this is completely new to me. I never dug deeper into the debugger than setting breakpoints and watchpoints, and watching memory and operations.

 

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

Announcement: Release 0.227 will be delayed until December. There are some technical reasons, especially unstable drivers; see https://www.mamedev.org/?p=489. With a tiny bit of pride I dare say that our TI drivers are not part of the problem. 🙂

 

Release 0.227 will provide you with a new Horizon emulation which allows for all the configuration options of current 4000B cards.

 

In the meantime, I managed to set up the MSYS2 build environment on Windows. This means that I can now build MAME releases for Windows at any time, too. As with the Linux and Raspbian versions, I restrict the set of drivers to the following ones: TI-99/4A (Eur/US), SGCPU (aka 99/4P), TI-99/8, TI-99/2, Geneve, evmbug (Stuart's Breadboard Project), Powertran Cortex, TM990189, Tomy Tutor, CC40. This reduces the MAME executable's size by more than 50%.

 

You will find the MAME releases on the FTP server of WHTech in the path /emulators/MAME/{full | ti99}/<operatingSystem>

 

The "ti99" subtree contains the above-mentioned restricted MAME versions; the "full" subtree offers all drivers (you still need their ROMs, of course).

 

The official builds have a release number in their name behind the prefix "mame", like "mame0226...".

 

The interim releases have a date in their name behind the prefix "mame". The current file that I uploaded is called "mame20201121b_ti99_windows64bit.zip". The "b" indicates that this is a binary package. The "ti99" in the name stands for the restricted release, and the rest is the operating system.

 

Whenever I believe that the current state is stable enough for use, I will upload such an interim version (and take away older ones). Typically there should only be such versions for the current month.

 

Within this package you will find my magic cygwin script "mameprep_cygwin". After unzipping the package and storing the contents in some folder on your drive, you can invoke this bash script in cygwin which automatically pulls all ROMs, important disks, a boot HD for the Geneve, and more from the FTP server, sets up start scripts and stores them in a folder on your desktop. When it is finished, you are ready to go; maybe you want to copy your own disks from your old installation into this new folder.

 

Chris is preparing his OoeyGui tool to adapt to this structure on WHTech; it already incorporates the mameprep_cygwin features so that you do not need to install Cygwin and run my script if you take OoeyGui.

  • Like 3

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...