News for hackers. Stuff that matters.
Re:Another World by garaetjjte on Friday June 15, 2018 @06:25PM (#17324170)
This is also interesting game from technical side: vector graphics, runtime is virtual machine interpreting custom bytecode.

There is also runtime for modern platforms using SDL, reverse engineered from DOS binary: http://fabiensanglard.net/anotherWorld_code_review/

Re:Another World by exikyut on Friday June 15, 2018 @10:27PM (#17325458)
Thank you SO much for this link.

I was going to come in here and mope about how hard this is to play. (As in "get running", not even mentioning in-game difficulty! :P)

First I tried a random Amiga ROM I found, which seemed like it was trying to cooperate but couldn't (the game kept freezing after the intro but before the interactivity began).

Next I tried the DOS version, which fared better but was still a little glitchy in terms of latency (old computer).

Both versions had the silly code wheel thingy as well. Completely respect it, but it's VERY annoying to deal with. ("another world code wheel" has a very very nice result from oldgames.sk.)

This VM emulator is awesome. It Just Works™ on Slackware, only uses 12-16% CPU on a decade-old machine (very nice!), happily picked up the resources from the DOS copy I'd found, and the transparent load/save system works very nicely to a) make the code wheel (which is built into the game bytecode, not the runtime/EXE) less of a nuisance, and b) deal with "30 deaths per minute" syndrome :) (I've been meaning to find the full version of this for years.)

And it's also really impressive that this was reverse engineered like this... heh.

Btw, the original bytecode system was all Forth, wasn't it?

Re:Another World by bananaboy on Saturday June 16, 2018 @05:56AM (#17326783)
Another World was re-released on Steam by Eric Chahi a few years ago for Windows, Mac, and Linux: https://store.steampowered.com/app/233550/Another_World__20t...
Re:Another World by exikyut on Saturday June 16, 2018 @06:08AM (#17326814)
I'm very much looking forward to poking both the 20th Anniversary and 15th Anniversary versions on a newer machine at some point.

(On a related note... I typed the line above during heavy swapping/a frozen browser, and this is the ~2nd time I've not made any mistakes :D)

Re:Another World by digi_owl on Friday June 15, 2018 @06:35PM (#17324248)
The VM trick is old hat. Even Infocom used it to allow their games to be playable across a range of micros. Oh and they developed their games on a PDP.
Re:Another World by jacobush on Friday June 15, 2018 @06:56PM (#17324422)
Still, that it was done by one single person, such an immense game, before the Internet. I could pull it off now, (hi google), then, not in a million years.

Also Infocom games were text, much simpler things.

Re:Another World by raldi on Saturday June 16, 2018 @02:36AM (#17326225)
Speaking as someone who's spent a lot of time reading the Zork source code and the Z-machine spec that allowed it to be ported to an huge variety of ancient platforms (http://gunkies.org/wiki/Zork), I have to say, your dismissive attitude is wildly inaccurate.

Both the game and its VM platform were incredibly intricate works of genius.

Re:Another World by digi_owl on Friday June 15, 2018 @08:42PM (#17325015)
There is a "surprising" number of one-man shows in the early gaming world.

Also, even though the net didn't exist books did. Not was Another World his first game.

And do not belittle the Infocom games, they had perhaps the best parser of any text adventure. And they were able to cram those games into 8-bit micros.

Re:Another World by jacobush on Saturday June 16, 2018 @06:52AM (#17326901)
Did not mean to dismiss or belittle Zork or its machine.
Re:Another World by bluedino on Saturday June 16, 2018 @09:32AM (#17327313)
How did they get this engine working on sprite base systems like the SNES?
Re:Another World by klodolph on Saturday June 16, 2018 @10:20AM (#17327516)
You can put a coprocessor inside the cartridge. I believe that Another World used the Super FX coprocessor.

https://en.wikipedia.org/wiki/Super_FX

Re:Another World by jccalhoun on Saturday June 16, 2018 @11:41AM (#17327815)
Since Another World wasn't listed on that wikipedia page, I searched and found this interview with Rebecca Heineman who ported the game to SNES: http://www.grokcode.com/106/interview-rebecca-heineman/

"Since Interplay wouldn’t pay for a SuperFX chip, I found a way to do it with static RAM on the cart and DMA which got me a great frame rate. Interplay wouldn’t pay for the static RAM either, so I ended up using Fast ROM and a MVN instruction. Interplay wouldn’t pay for a 3.6 Mhz ROM either. So, frustrated, I shoved my block move code into the DMA registers and use it as RAM running at 3.6 Mhz. It worked. I got fast block moves on slow cartridges and made a game using polygons working on a 65816 with pure software rendering."

Re:Another World by klodolph on Saturday June 16, 2018 @01:22PM (#17328300)
Hm, I found that interview but the link to it said it was a SuperFX chip so I didn’t watch it. That teaches me.
Re:Another World by 0xcde4c3db on Saturday June 16, 2018 @11:49AM (#17327863)
The style of graphics is superficially similar to early Super FX games, but the cartridge is just a basic ROM+CIC board with an 8-megabit ROM. Based on the fact that it has considerable "load time", I think it basically chopped up the game into working sets and pre-rendered any missing frames when transitioning between them, possibly with some extra streaming code for cutscenes.