Jump to content
IGNORED

Altirra 2.50 Final out


serj

Recommended Posts

Shouldn't be hard to fix and I don't see a reason not to, but the save state system needs an overhaul in general -- there's actually quite a lot of state that doesn't make it into save states besides this, such as cartridge banking.

Ye, but it needs decisions to be made. I believe someone would require all mounted disks in state file... In order to make his work continuable (I just made up that word ?), but I hope you know what I mean. There can be more aspects that have to be considered... Also that cart banking for example.

Not an easy task...

Link to comment
Share on other sites

Update:

http://www.virtualdub.org/beta/Altirra-2.60-test29.zip

http://www.virtualdub.org/beta/Altirra-2.60-test29-src.zip

 

This includes a pretty big rework of a bunch of the device emulation code. Changes:

  • The Add Device dialog now has detailed descriptions of each device.
  • The printer has been converted to a device, and now supports SIO-level 820 emulation so it works with SpartaDOS X's whacked PRN: device.
  • All of the SIO/CIO/OS acceleration options have been consolidated into an Acceleration submenu.
  • 850 and 1030 have been converted to devices. For the 850, you will need to add one or more modems as sub-devices.
  • Lots of fixes to 1030 and T: emulation -- command handling fixed, better heuristics for detecting dial-outs, and proper support for translation/parity in the HLE T: handler. AModem 7.5 now works.
  • Added a new T: software driver so the 1030 device now supports T: bootstrap. The Additions disk also now has a 1030 bootstrap tool (boot1030.com) and a relocatable version of the T: handler (thnd1030.com). (Yes, DTMF tone dialing is actually implemented.)
  • All emulated handlers (H:, R:, and T:) can now be hot-loaded or hot-unloaded without a reset, as long as they're not being actively used. The emulator now fixes up HATABS and open IOCBs on the fly.
  • The host device (H:) can now also register itself as D:, for direct-loaded programs that need disk access.
  • Non-disk devices now have options for SIO patch acceleration and SIO burst transfers.
  • Disk Explorer now has the ability to view text files on disk image (right-click > View), with EOL conversion and inverse video support.
  • The debugger now has an option to randomize application zero-page and memory (MEMLO to MEMTOP) when directly loading executables. This can catch uninitialized memory usage that would otherwise be hidden by the OS memory clear.

I'd be interested in hearing if anyone has a real 1030 and can do testing with it -- in particular, what kind of bootstrap it supports and the actual binaries for its embedded ModemLink and T: handler software. This doesn't seem to be floating around the Interwebs like the 850 stuff is. I have the XM301 disk handler, but am not sure if it is the same as the one built into the 1030.

 

Also, there is a problem with XE-Term not working properly when the 1030 is set to full emulation mode. The problem is that XE-Term downloads the T: handler from the 1030, but never inits it and displays the XM301-not-working message. For some reason, it appears to issue a valid 1030 bootstrap and then complains if it succeeds. I'm not sure why yet.

  • Like 4
Link to comment
Share on other sites

Avery, thanks for the release of a new beta emulator.

really liked the new option in the disk explorer, view disk images.

 

I wanted to ask, where can I get the BIOS image for the 1030 modem.

 

I understand that a stable release of the emulator we will not see this year.

or can be, a miracle happens? ;)

Link to comment
Share on other sites

There isn't an image for the 1030 modem handler, AFAIK. It would be 2864 bytes long. It's there currently to make development easier (hot reload).

 

2.60 final is not going to land before the end of the year -- too many changes that need to stabilize and not enough days.

  • Like 1
Link to comment
Share on other sites

I have a 1030, just let me know how I can help.

 

Awesome -- can you do three things for me:

  1. Check whether the 1030 responds to a type 1 poll (SIO command $3F) like the 850 does. You should be able to tell this by booting DOS 2.0S with the vanilla AUTORUN.SYS and listening during the SIO raspberry between the initial DOS load and the DUP.SYS load. I'm pretty sure it doesn't, though.
  2. Dump the handler firmware. Issue SIO command: DDEVIC=$58, DUNIT=$01, DCOMND=$3C, DSTATS=$40, DBYTLO/DBYTHI=$B30, DBUFLO/DBUFHI=any buffer area.
  3. Dump the built-in ModemLink software. This is harder, as I don't know the bootstrap works. It either works by emulating D1: or by a type 3 poll (device 4F/command 40/aux1 00/aux2 00). Supposedly, this only boots when there is no D1: disk drive, which probably means you'll either need a SpartaDOS X cartridge to bypass it and still have DOS access, or hotplug SIO devices (seems bad).

Unfortunately, we probably don't have a way to dump the full 1030 firmware, because according to the schematic the microcontroller is an 8048 with internal ROM.

Link to comment
Share on other sites

In the BASIC mode, the blue hue is not correctly ? It should be dark blue as default in real hardware. Did I miss something on the newer version of Altirra ?

 

I added gamma correction and cranked it up to 1.6 -- it can be tuned back down in System > Video > Colors. Suggestions on better values are welcome. I'll probably modify the scanline code to brighten colors independently of the gamma correction value so it doesn't look darker than non-scanlines mode.

Link to comment
Share on other sites

 

Awesome -- can you do three things for me:

  1. Check whether the 1030 responds to a type 1 poll (SIO command $3F) like the 850 does. You should be able to tell this by booting DOS 2.0S with the vanilla AUTORUN.SYS and listening during the SIO raspberry between the initial DOS load and the DUP.SYS load. I'm pretty sure it doesn't, though.
  2. Dump the handler firmware. Issue SIO command: DDEVIC=$58, DUNIT=$01, DCOMND=$3C, DSTATS=$40, DBYTLO/DBYTHI=$B30, DBUFLO/DBUFHI=any buffer area.
  3. Dump the built-in ModemLink software. This is harder, as I don't know the bootstrap works. It either works by emulating D1: or by a type 3 poll (device 4F/command 40/aux1 00/aux2 00). Supposedly, this only boots when there is no D1: disk drive, which probably means you'll either need a SpartaDOS X cartridge to bypass it and still have DOS access, or hotplug SIO devices (seems bad).

Unfortunately, we probably don't have a way to dump the full 1030 firmware, because according to the schematic the microcontroller is an 8048 with internal ROM.

 

Hi :-)

 

With the 2005-Freezer, this was a piece of cake, afterall.

I did not open the 1030 to look inside.

I can confirm the PSU is 9V AC (NOT DC!) using 3.5mm jack.

 

The 1030 boots like the 850 does (see APE-log below).

It only answers to STATUS after some time and then a READ sector.

I dumped the boot-sector to disk. $400-$47F

It loads into $600.

D:R1030B.OBJ

It uses a lonely RTS (MyBIOS does not boot the device, so work at hand....) and then does a SIO-call, $58,$01,$3B,$40,$00,$0C,$06,$00,$00,$28

So download software to $C00, length $2800

I dumped memory content $C00-$33FF to disk.

D:R1030.OBJ

 

Added device is T:

 

LOMEM is set to $3200, so what about the lost $200 bytes?

Well, it seems to hold the names of the programmers as egg ;-)

DOSVEC is set to $C00

 

I wanted to extract the OBJ-files with Altirra latest BETA, but I can't find the H:device anymore...?

 

Success with the files and spread this disk around.

 

Grtz and a happy 2015 in advance to all !

Sijmen.

Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84
Device: 31     Command: 53     Aux 1: 00     Aux 2: 00     Checksum: 84 <--- reply
Device: 31     Command: 52     Aux 1: 01     Aux 2: 00     Checksum: 84 <--- reply
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 4F     Aux 2: 4F     Checksum: 2E
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
Device: 4F     Command: 40     Aux 1: 00     Aux 2: 00     Checksum: 8F
  • Like 2
Link to comment
Share on other sites

Awesome, thanks. I'll credit you when I add this info to my hardware manual. BTW, you don't need H: to extract files from an ATR -- just click the right triangle in the Disk Drives dialog > Explore Disk and drag out the files through the Disk Explorer.

 

The boot sector works fine and ModemLink starts up, but there is a problem with the T: handler -- it disappears after a reset. Was the main $C00 dump done after the software was allowed to execute? It looks like parts of the code have already been self-patched. This prevents DOSINI from getting patched and thus the T: handler doesn't get reinstalled.

 

Is MyBIOS using OS-B or XL/XE initialization order? There is an issue with the latest beta where emulated handlers don't get reinstalled on OS-B boot order because CIOINV gets called before HATABS is set up. I have a change coming to add an additional check on CIOV in case the handler table wasn't set up in time.

Link to comment
Share on other sites

MyBIOS is on hold for now, still working on the BIRDFOOD-game v1.1 :-)

I tested with 4.9.B8, but I'm already on B9 myself, but not burned into my 800XL yet.

No idea yet why it does not download. The 850 was a challenge too (timing of COMMAND is very critical), but that still boots.

 

I have dumped before Modemlink starts, so during the prrrrrrrrrrrrrrrrrrr of the OS sending the $4F over SIO.

Hmmmm, or is the bootcode already jumped to?

The manual says something about not using a cassette, so perhaps it using some kind of handshaking on MOTORGO to identify if the 1030 is still there?

 

Let me know, otherwise I write a program to download the code and not start it.

But that will be next year.

Busy with the family.

Link to comment
Share on other sites

This is more a minor annoyance which is compounded by the fact that my Atari Software Library is nested about 6 directories deep. If you double click on an .atr file in explorer or use the Auto-boot option from the File menu in Altirra, the .atr is mounted in the disk menu, but if you then click on the explore button in the disk menu. (the button with 3 dots). You are not brought by default to the directory of the atr that you auto-booted. Instead you are brought to some directory where you last manually mounted a disk from and you have to manually navigate back to the directory where the currently mounted .atr resides. I hope I wrote that clearly enough for you to make sense of it.

 

Thanks,

 

Bob

Link to comment
Share on other sites

Update:

http://www.virtualdub.org/beta/Altirra-2.60-test30.zip

http://www.virtualdub.org/beta/Altirra-2.60-test30-src.zip

 

  • 1030 ModemLink bootstrap is now supported. Required firmware image is $2880 (10368) bytes, consisting of the 128 byte boot sector with the $2800 ModemLink and T: handler software afterward.
  • Added workarounds so SDX PRN: can run in intercepted mode (no line limit).
  • Emulated CIO devices hook properly with OS-B again.
  • Phantom player only DMA effects are now emulated (DMACTL=$26, GRACTL=$07).
  • Fixed 850 firmware hotloading.
  • Fixed incorrect initial translation mode for R:.
  • Fixed some bugs in built-in OS (short SIO timeout, Esc+Clear not printing).
  • Command-line images now set the default for the boot/open dialog.
  • Fixed a bug in Altirra BASIC's BGET and BPUT commands (1.34 attached).

The 1030 boot sector initializes the T: handler before returning to the OS, so yeah, the type 3 poll is too late. Need a redump from just the SIO read, without the boot. No rush, though -- thanks for the dump work so far. As far as I know, the 1030 doesn't use the motor line but still uses the command line for control, so I'm not sure why using a cassette drive with it is inadvisable.

 

atbasic.bin

atbasicx.xex

  • Like 2
Link to comment
Share on other sites

The 64 bit version of Altirra wont run on Win XP 64 Bit Pro, it gives a message "not a valid 32 bit application". Most other 64Bit Programs will run on the same Xp 64 Bit, But som other programs

have had the same error. On Win 8.1 the 64 bit version of Altirra Runs , The Pc with XP 64 bit i use for older games, Emulators etc...

Link to comment
Share on other sites

XP64 for old games? The mutt halfway between XP and Windows Server 2003 that has terrible driver support and still can't run 16-bit applications? Seriously? Why aren't you running XP32?

 

The "not a valid 32 bit application" happens when the application is built for Vista or above. Try this version:

http://www.virtualdub.org/beta/Altirra-2.60-test31.zip

http://www.virtualdub.org/beta/Altirra-2.60-test31-src.zip

  • Like 1
Link to comment
Share on other sites

"BTW, you don't need H: to extract files from an ATR -- just click the right triangle in the Disk Drives dialog > Explore Disk and drag out the files through the Disk Explorer."

For those who may not know this, you can also do the reverse and drag & drop file(s) onto an ATR image as well. I just used this feature a couple of days ago. Another awesome feature of Altirra!

Link to comment
Share on other sites

Nice to have the original roms just incase....

 

They can be found legally with XF25

 

http://atariarea.krap.pl/PLus/files/xf25.zip

 

Just drop them in the Altirra root dir and if you are using one of the newer beta's just go to system / firmware and lastly Firmware images and scan them in, now under firmware you can use them.

Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...