Live data from Hacker News

TIS-100: An emulator for a CPU that doesn't exist

eviltrout.com

21–30 of 38 posts

Re: TIS-100: An emulator for a CPU that doesn't exist

#21

The game itself I love. But I have some issues with it's implementation. To be specific, it maxes out the CPU even when it's not doing anything. Given that it's supposed to emulate low-level hardware, at very slow speeds, and does not have any demanding graphics, I fail to see why it should do that. (It's something I've seen happening in more games as of late, actually. For example, Desktop Dungeons - a very fun game…

This is common with games nowadays. Almost no one throttles the game loop outside of mobile I guess. I've had the same issue with the Analog/Hate _visual novel_ series. My laptop doesn't need to turn into a lapheater for some text....

Re: TIS-100: An emulator for a CPU that doesn't exist

#22

The game itself I love. But I have some issues with it's implementation. To be specific, it maxes out the CPU even when it's not doing anything. Given that it's supposed to emulate low-level hardware, at very slow speeds, and does not have any demanding graphics, I fail to see why it should do that. (It's something I've seen happening in more games as of late, actually. For example, Desktop Dungeons - a very fun game…

IIRC TIS-100 is implemented using Unity, which doesn't really give you a lot of leeway as to when you update and render (e.g. you choose a framerate and it renders and updates your objects at that rate). Admittedly, since most of the time in TIS100 the screen does not change, if it were implemented using a custom engine this could be fixed.

For desktop dungeons, I'm not aware of the specifics about that game (though I have played it), but generally, if you're using OpenGL or DirectX to render, repainting only part of the screen isn't an option, so if anything is animated (no matter how slight the animation), you have to redraw the screen every frame. There are exceptions to this (like the mouse pointer, although this requires platform specific code), but not many of them.

Re: TIS-100: An emulator for a CPU that doesn't exist

#23

The game itself I love. But I have some issues with it's implementation. To be specific, it maxes out the CPU even when it's not doing anything. Given that it's supposed to emulate low-level hardware, at very slow speeds, and does not have any demanding graphics, I fail to see why it should do that. (It's something I've seen happening in more games as of late, actually. For example, Desktop Dungeons - a very fun game…

It's still in early access, perhaps a bug report to the developer would be in order? It doesn't do this on my machine, so it might not be occurring for them.

I am running Linux, I have to admit. Could be poor Unity support in that regard.

Re: TIS-100: An emulator for a CPU that doesn't exist

#24

Earlier quoted context omitted.

Well, I wrote one in Haskell, so there! (Currently trapped in legal hell. I work for one of those annoying companies that claims ownership of everything I do, even in my personal time, so I have to get it cleared before I can push it to github...) I added some extensions to allow one node to program another; the PROGRAM opcode resets the node in that direction, and it can then be fed a series of numbers which form th…

There's a reason to move to Silicon Valley - its illegal in CA for a company to claim work you do on your own time.

This is not quite correct. Even out here in CA you still need permission if your employer has an invention assignment agreement.

Re: TIS-100: An emulator for a CPU that doesn't exist

#25

Earlier quoted context omitted.

Doubtful. Having only one usable register (plus another non-addressable "backup" register) places a (IMO) insurmountable constraint on running any multiuser unix-like kernel.

Well, the trick to the game is that you have multiple cores, each with their own register and a pipeline between them. This effectively gives you six registers, since you can bounce values back from the core on an edge register. There are also "stack" cores, which store an arbitrary number of values and allow you to pop them back off. If you were able to expand the system to have N cores of any type, I could easily i…

So Transputers again

Re: TIS-100: An emulator for a CPU that doesn't exist

#26

Earlier quoted context omitted.

There's a reason to move to Silicon Valley - its illegal in CA for a company to claim work you do on your own time.

This is not quite correct. Even out here in CA you still need permission if your employer has an invention assignment agreement.

They ask you to sign those, but the state doesn't permit them to claim inventions done on your time on your equipment. Don't be fooled.

Re: TIS-100: An emulator for a CPU that doesn't exist

#27
post #22

The game itself I love. But I have some issues with it's implementation. To be specific, it maxes out the CPU even when it's not doing anything. Given that it's supposed to emulate low-level hardware, at very slow speeds, and does not have any demanding graphics, I fail to see why it should do that. (It's something I've seen happening in more games as of late, actually. For example, Desktop Dungeons - a very fun game…

IIRC TIS-100 is implemented using Unity, which doesn't really give you a lot of leeway as to when you update and render (e.g. you choose a framerate and it renders and updates your objects at that rate). Admittedly, since most of the time in TIS100 the screen does not change, if it were implemented using a custom engine this could be fixed. For desktop dungeons, I'm not aware of the specifics about that game (though…

As I mentioned in the other comment, perhaps the problem is poor Linux support on the Unity side of things? Which would be... how shall we say... typical, since Unity also targets mobile platforms. You'd think they'd allow developers to properly optimise for fan noise.

Regarding DD: first, it's also implemented in Unity, so... but that aside, even if the whole screen gets repainted, it shouldn't max out. The graphics are just not demanding enough for that.

Re: TIS-100: An emulator for a CPU that doesn't exist

#29
post #22

Earlier quoted context omitted.

IIRC TIS-100 is implemented using Unity, which doesn't really give you a lot of leeway as to when you update and render (e.g. you choose a framerate and it renders and updates your objects at that rate). Admittedly, since most of the time in TIS100 the screen does not change, if it were implemented using a custom engine this could be fixed. For desktop dungeons, I'm not aware of the specifics about that game (though…

As I mentioned in the other comment, perhaps the problem is poor Linux support on the Unity side of things? Which would be... how shall we say... typical , since Unity also targets mobile platforms. You'd think they'd allow developers to properly optimise for fan noise. Regarding DD: first, it's also implemented in Unity, so... but that aside, even if the whole screen gets repainted, it shouldn't max out. The graphic…

Well, repainting at 30 or 60fps is going to heat up a lot of computers, demanding graphics or not.

Although you're probably right that it's mostly a Unity Linux support issue. My understanding is that Unity Linux support is mostly a labor of love from the Linux-using employees at Unity, and that it doesn't get a lot of attention other than that.

Post reply on HN