Release Hatari (Atari St Emu) 1.4.0 Released


skeezix

Internal Development
Joined
Mar 11, 2003
Messages
8,063
Website
www.codejedi.com
Fresh for the new year, I thought I should get the latest Hatari ported and our pnd refreshed.

Still "START" button on the Pandora to bring up the config dialogs. (Default runs in windowed mode, but you can check 'fullscreen' off, or remap keys, or turn on various features etc etc. Its a great config system!)

(The previous build was back from August/Sept's 2009 official Hatari release, but theres been some significant improvements released into the 1.4.0 a few months back. we've also improved the Pandora firmware since that build so porting is cleaner and easier.)

- did not add vsync yet; the Hatari codebase assumes SDL will do that for it; likewise, it uses software pixel doubling for low res fullscreening .. I should add vsync and hardware scaling to improve things a bit; let me know if you care :)

This version should run a little more accurately (some demos will work nicer), and faster (better audio, better for demos, and better handling of overscan if you turn on the 'borders' option in windowed mode.)

The pnd has been tweaked a little a well:
- does not imply any CPU speed, it'll use whatever you're set to; more friendly for overclocking and no buging you when run
- creates a virtual hard disk in your appdata (hdd_drive_c I think I called it) and mounts it as C: in the ST; if you have a problem booting games, make sure your 'boot from hard drive' is unchecked in the hard drive config panel)
- I'd suggest verifying your joystick is set up right; go to config, and map joystick to 'keyboard' and hit the d-pad buttons as directed

I'd recommend going to the config and specifying a default disk mount path to your rom path, so that every time you hit floppy -> Browse to pick a disk, it'll open in the right place to save you navigating around your SD :)

I hope you enjoy it .. the ST rules!

UPDATED:
Direct link here: http://www.skeleton..../Hatari140b.pnd
ED updated the dl.openhandhelds archive with the new version; same location http://dl.openhandhelds.org/cgi-bin/pandora.cgi?0,0,0,0,72,61

Updated on the file archive here: http://dl.openhandhe...i?0,0,0,0,72,61
Also available on my site: http://www.codejedi..../Hatari140a.pnd
App store -- someone else (craigix?) owns it, so I'll have to bug him to refresh.

jeff
 
I'll see if I can track down some well defined 'legal to distribute' games and demos, and perhaps bundle them in. That ought to make folks lives easier :)

jeff
 
Thanks Jeff. :D

The ST is one of the few classics I never got around to using when it was originally released(no one I knew owned one). I put the last version on my Pandora, but I never got around to getting a good list of games, so I didn't try it yet. Sadly, I have to ship my Pandora off for repairs tommorow, but I will put it at the top of my list for her return. Thanks again for all the hard work on this project.

Chris
 
jumpman said:
Thanks Jeff. :D

The ST is one of the few classics I never got around to using when it was originally released(no one I knew owned one). I put the last version on my Pandora, but I never got around to getting a good list of games, so I didn't try it yet. Sadly, I have to ship my Pandora off for repairs tommorow, but I will put it at the top of my list for her return. Thanks again for all the hard work on this project.

Chris

*g* For a listing of good games, check out the forum.. maybe its on the OPBoards, but for 'best of' for various systems, including Atari ST; in that one I linked to an old blog entry of mine, and a screenshot page of mine, which may help you decide. Also see Atari Legend website for a big pile of screenshots...

.. but try Dungeon Master, for the first mouse based first person RPG, that pretty much defined the whole RPG genre we have today. (Similar to (and inspired) Eye of the Beholder on PC and Amiga)

jeff
 
Last edited by a moderator:
Thanks for all the help guys.

I'm wrapping up my Pandora right now for shipping, but I plan to use my off time to put together a cool list of games for her return.

Chris
 
Many thanks for this, I've really enjoyed reliving the glory days of the ST. Will try out the new version tonight.

skeezix said:
- did not add vsync yet; the Hatari codebase assumes SDL will do that for it; likewise, it uses software pixel doubling for low res fullscreening .. I should add vsync and hardware scaling to improve things a bit; let me know if you care :)

I care, it would be great if you could implement vsync and hardware scaling. :)
 
Last edited by a moderator:
Code:
                            []  []      [][][][][][][]  
                            []  []    [][]          [][]
                        [][][][][][][][]    [][][][]  []
                            []  []    []  [][][][][]  []
                            [][][]    []  [][][][]  [][]
                        [][][]    [][]    [][][]  []  []
                            []    []    []  []  []  []  
                            [][][]    []      [][][]    
                          [][]      []  []  []    [][]  
                        [][]    [][]                []  
                        []    [][][][]  []    [][][][][]
                        []  [][][][]  []    []        []
                        []  [][][]  [][]    []    [][][]
                        []  [][]  []  [][]  []  []    []
                        [][]    []  []  [][][]  []    []
                          [][][][][]        [][][][][]
 
skeezix said:
- did not add vsync yet; the Hatari codebase assumes SDL will do that for it; likewise, it uses software pixel doubling for low res fullscreening .. I should add vsync and hardware scaling to improve things a bit; let me know if you care :)

Vsync please! That's am option that's always on for me :)
 
Last edited by a moderator:
Renegade said:
skeezix said:
- did not add vsync yet; the Hatari codebase assumes SDL will do that for it; likewise, it uses software pixel doubling for low res fullscreening .. I should add vsync and hardware scaling to improve things a bit; let me know if you care :)

Vsync please! That's am option that's always on for me :)
Yes Vsync would be great, screen tearing is rather distracting.

@ Skeezix, thanks for updating. Hopefully it can get a bit more d-pad friendly for navigating (I still say using the right nub as a mouse click is retarded, who ever thought that up should be shot, or worse, forced to use it). For ROM picking the standard left- right on dpad to page and d-pad up down to select ROM and the B button to select ROM would be much easier. Also when I select a ROM it just goes to the green desktop, it doesn't load. I "reset machine" and it still goes back to desktop. Something more intuitive would be nice here. Any speedups for smoother scrolling would be great too. Thanks for the great work.

I guess you didn't like that preview pic I gave you though as you went back to the old DM screen ;)
 
Last edited by a moderator:
oh, send me the preview pic again and I'll update it :)

I think its defaulting to 'boot from hdd' so maybe I shoudl hack it to default not to be that way, since means most people will need to uncheck that option in the conf, which might confuse folks..

- I used to have left/right shoulder as left/right click, but did not put that in for now; want it back in?

- speedups for smoother scrolling? vsync ought to make it smoother :)

- I shoudl add some keyboard/dpad shortcuts to the file dialog, it sort of drives me nuts :)

jeff
 
skeezix said:
oh, send me the preview pic again and I'll update it :)

I think its defaulting to 'boot from hdd' so maybe I shoudl hack it to default not to be that way, since means most people will need to uncheck that option in the conf, which might confuse folks..

- I used to have left/right shoulder as left/right click, but did not put that in for now; want it back in?

- speedups for smoother scrolling? vsync ought to make it smoother :)

- I shoudl add some keyboard/dpad shortcuts to the file dialog, it sort of drives me nuts :)

jeff
It would also be nice if it saved these options. I clicked off "boot from HD" and saved config but when I reload the emu it just defaults back to checked. You then have to go in and set everything up again which is a pain with a nub that when you move it 1/2 mm it flies halfway across the screen and you are trying to hit a tiny check box of 5x5 pixels :p


I think these buttons should be configurable, at least for the mouse click and at least have a button that can double as joystick UP (so you could use B or something to jump as well as d-pad up. The A and Y buttions could also be configured as mouse buttons too. Some games use the mouse buttons for FIRE like Starglider. Using the analog nub to fire kind of bites. If those could be configured to an AXBY button that would rock. Trying to double click with an analog nub is not always easy.

When you select a ROM shouldn't it just load and reset? Now you have to select the ROM, then okay, then go back to main menu, then click that atom sized circle "reset machine", then "OK", after that it finally loads. And you are trying to do this all of this with the old spastic over-reactive nub and trying to hit a tiny box, and worse yet those tiny tiny circles with the dot in the middle.

It i a great emu but it is obvious it was designed with a PC mouse in mind. It doesn't translate to the Pandora controls well in my opinion. I suppose that is a fault of the controls such as the nubs being too touchy. Those with a busted nub are SOL.

Also how do you config the D-pad GPIO when using "real joystick" or can you? The pad doesn't seem to work in this mode, I guess you have to use it through keyboard setup?
 
Last edited by a moderator:
Awesome emu Jeff thanks!

I've been really enjoying a bit of mobile llamatron

In this new version the issue with the mouse pointer 'drifting' and not synching with the touchscreen seems a bit better - do you think in future it may be possible to fix it, as I'd love to play a bit of DM again but its a bit awkward using the nubs

Anyway thanks again
 
Touchscreen drift for ST is a real problem in most emus, desktop or otherwise; I should put some hard thought into it, but everytime I muddle with it I never think of a way out, short of writing a device driver for the ST-side, but that wouldn't work with most existing packed games :/ The trick is TOS has its own concept of mouse location, and the mouse ius just communicating 'moved left' and 'moved right' type operations, so its very hard to map 'go here' to 'go left/left/left/left/up' since you never really know where the mouse _is_ (since games jump it aorund, resolution changes mid-scanline confuse things, etc.) TOS knows, but its hard to figure out in any given boot where that is in memory, etc :) But its entirely possible theres just somethign I and many other ST emu nuts are missing .. ie: using the nubs works fine, since you're "driving the mouse", but its touchscreen that screws things up.

"boot from hdd" does save in the config, no problem there (for me anyway :) I operate the UI with the touchscreen, so never had too much nubbing problem there, but yeah, I know what you mean. The UI is a little on the 'precise' side, so works with mouse best. It is often tempting to make a 'light GUI' option for Hatari, one that also fits into small resolution, so it could work on pandora and caanoo even; but seems awfully bad use of my time to write up a whole UI for it, when it has a very comprehensive one built in. But tempting .. press Start to bring up mini-UI (like CaSTaway but less options.. just eject/insert floppy, reset, thats it :p), and press Start again to bring up full UI, or something.

(Most annoying to me is that folders / files are listed linearly, shoud lbe folders at the top!)

Reset is not 'implied' since you may just want to be putting in a save disk, or doing multi-disk stuff, or any number of things; Hatari is not just for games, it runs a full computer (and even partially Falcon, TT, etc) so people run compilers and networking and stuff in there, so its fairly comprehensive in UI.

But yeah, tempting to make a button for 'ok, and reset and return to emulation' :p Maybe I should look into a mini-UI option, like a HUD.

I use d-pad as keyboard so map it that way; you could switch dpad to joystick mode (or I could do that in the runscript), but it works well in keyboard mode.

jeff
 
skeezix said:
"boot from hdd" does save in the config, no problem there (for me anyway :) I operate the UI with the touchscreen, so never had too much nubbing problem there, but yeah, I know what you mean. The UI is a little on the 'precise' side, so works with mouse best. It is often tempting to make a 'light GUI' option for Hatari, one that also fits into small resolution, so it could work on pandora and caanoo even; but seems awfully bad use of my time to write up a whole UI for it, when it has a very comprehensive one built in. But tempting .. press Start to bring up mini-UI (like CaSTaway but less options.. just eject/insert floppy, reset, thats it :p ), and press Start again to bring up full UI, or something.

Reset is not 'implied' since you may just want to be putting in a save disk, or doing multi-disk stuff, or any number of things; Hatari is not just for games, it runs a full computer (and even partially Falcon, TT, etc) so people run compilers and networking and stuff in there, so its fairly comprehensive in UI.

But yeah, tempting to make a button for 'ok, and reset and return to emulation' :p Maybe I should look into a mini-UI option, like a HUD.

I use d-pad as keyboard so map it that way; you could switch dpad to joystick mode (or I could do that in the runscript), but it works well in keyboard mode.

jeff
To me touchscreen use should be optional. I just don't like scratching/fingering up the screen, or fumbling with the stylus if not needed. If the d-pad could just work somehow so that when you go left and right it highlights columns and up down changes rows in the existing UI that would be OK. You would not need to totally re-do but just modify the GUI a bit.

If a button on the ROM screen was added that said "select and reset" or something that would work.

Also a more "standard" way of moving d-pad right left to page up/ down and scroll wrap would be nice in the ROM picker. Right now it is not intuitive as all and you kind of have to just fumble around to figure out what does what in the ROM browser.
Nothing on the Wiz GP2X, or Pandora does it like this does.

Also it would be nice to be able to remap mouse buttons. As I said trying to fire by sliding an analog nub is just dumb, double clicking even worse. Shoulder ok but even that for fire is awkward. It would be better if they could be mapped to ANY game button so you could map to an AXBY button for example making FIRE actually comfortable.

Also multiple keys for one function would be nice so you could map the d-pad UP also to a button for those platform games that use UP for jump.

If you ever wanted to work on the UI a bit I could always suggest some things.

I agree now that speed is more important as some stuff is still jerky. Some scrolling jumps allot still and rasters bring framerate down to about 8 FPS.
 
Last edited by a moderator:
Thank you very much, I'll certainly try some ST games and demos on my upcoming Pandora. This is one the first emulators I'll play with. Keep up the great work!!
 
Hi Skeezix,

I tested the emu, and it's very nice. I don't know if you'd like to improve it further, but I had some issues, especially when saving a config. If I try to save the config, I browse to the appdata directory (not sure where to put it), then when I pres OK, the emu crashes (well, at least is remains stuck).

As some people said also, vsync would be really great.

Thanks again for this emu and all the great memories it brings back!

Cheers
Frédéric
 
skeezix said:
Touchscreen drift for ST is a real problem in most emus, desktop or otherwise; I should put some hard thought into it, but everytime I muddle with it I never think of a way out, short of writing a device driver for the ST-side, but that wouldn't work with most existing packed games :/ The trick is TOS has its own concept of mouse location, and the mouse ius just communicating 'moved left' and 'moved right' type operations, so its very hard to map 'go here' to 'go left/left/left/left/up' since you never really know where the mouse _is_ (since games jump it aorund, resolution changes mid-scanline confuse things, etc.) TOS knows, but its hard to figure out in any given boot where that is in memory, etc :) But its entirely possible theres just somethign I and many other ST emu nuts are missing .. ie: using the nubs works fine, since you're "driving the mouse", but its touchscreen that screws things up.


A thought on that...

The mouse doesn't wrap around the screen does it? If not, then a solution would be to initially move it to 0,0, and only then apply the right/right/up/up operations to get it to the place it needs to be.

Depends on how fast you can do it, and it might make click-and-drag operations interesting (maybe touch the screen when not touching it initialises it, moves the mouse to the right position, then clicks, and then acts as normal until touch is removed?), but if touch screen is done by applying lots of "move" operations quickly anyway, then it could work :)

Another solution might be to patch TOS's memory. So just identify the values that change whenever a mouse is moved in a variety of programs and for a variety of cursors, and hope they're the same for most games, since the OS is dealing with them. Then the emu would calibrate itself for a given game (check that that location really did store cursor location), and then just patch the new position in on top of the old.

Just some thoughts :)

In other news, many thanks for continued ST support... I'm still enjoying the games for it a LOT... so many classics :)
 
Last edited by a moderator:
Little update for you folks..

- fixed the hdd boot option, so it doesn't always turn it on when you least expect it; if you've saved a config, you might want to wipe it out (example hatari.cfg in your appdata) just to make sure. But in general now, you actually have to enable the option for it to stick .. now it very definately defaults to off :)
- added vsync (always on); let me know if its visible apparent at all, or if it slows things down and you need a checkbox option to enable/disable it, or if its just fine. I can barely notice such things (my eyes must suck :) so I can't really tell. I still see tear lines in demo unpacks, but thats really due to games updating and rendering one line at a time, which is a separate thing to look into fixing .. but for games doing a lot of screen updates, this vsync should help it look more coherent. Let me know :)
- I included a half dozen random ST demos; they're legal to distribute since all fresh code from the demo scene groups. If you've already got a 'disks/readme.txt' in your appdata, it will not copy them in .. but if you delete yor readme.txt in there it'll think its a fresh Hatari install and unpack them for you. They take up only a few hundred K each, so no biggy.. feel free to wipe them out!

I'll have to look into adding some keyb/dpad control to the menus, since file selector really is annoying :)

A direct link is here (I'll edit first post as well); I'll upload to dl.openhandhelds soon

http://www.skeleton.org/tmp/Hatari140b.pnd
 
Back
Top