
Famous Graphics Chips: Microsoft’s Talisman - ingve
https://www.computer.org/publications/tech-news/chasing-pixels/microsofts-talisman
======
smacktoward
_> So, tiling wasn’t a good choice for PCs and workstation, but as mentioned,
ideal for power starved mobile devices._

It's fascinating to me how some technologies that seemed at one time like
also-rans suddenly became hugely relevant when mobile became A Thing. ARM, for
instance, started out in the mid-'80s aimed at the desktop market (the "Acorn
RISC Machine": see
[https://en.wikipedia.org/wiki/Acorn_Computers#New_RISC_archi...](https://en.wikipedia.org/wiki/Acorn_Computers#New_RISC_architecture)),
got clobbered when the market coalesced around Wintel, and simply to survive
retreated to one of the few niches where their chips had a clear advantage
over Wintel's: applications that required low power consumption.

That was a tiny market for a long time, but then mobile became A Thing and
Intel, who were focused as they always had been on performance over
efficiency, missed the shift completely. So ARM, which had been diligently
focusing on efficiency for years, went from being a footnote to history to
being one of the key architectures of modern computing.

~~~
trynumber9
It is also interesting that Intel (after buying the Strong ARM line from DEC)
were the manufacturers of some of the fastest ARM-based mobile chips in the
late 90s and early 00s but sold the line to Marvell in 2006 right before the
mobile explosion.

~~~
pjmlp
Another example from that track they already failed twice at memory tagging
support, while SPARC's became mainstream on Solaris and ARM's will become a
requirement for future Android versions.

------
MikusR
Tiling was also "secret sauce" of Nvidia Maxwell GPUs

------
sehugg
This reminds me of the Atari 7800's architecture. The screen is composed of
horizontal "zones" with variable heights. Each strip renders one or more
objects (sprites or tiles), stopping the CPU to do a DMA transfer on each
scanline. A lot of this is controlled by display lists in RAM, but some
settings (palettes for example) have to be changed on-the-fly via interrupts.
And sprites invariably span multiple zones, which is another PITA.

------
karmakaze
It's an interesting design in how it straddles between old and new rendering
pipelines. It's effectively allowing the definition of 3D sprites that can be
posed, imaged, tweaked and placed with the first half done eagerly and the
latter on-demand during frame output. As pointed out, the challenge would be
determining how complex a scene can be produced per frame and staying under
the limit as there doesn't seem to be a way of varying frames/sec.

------
blt
The whole thing sounds insanely complicated, and unclear that the complexity
could ever be hidden behind a standard OpenGL-like 3D API.

~~~
jandrese
The point where it all falls apart if the application falls behind for one
frame is a showstopper for game development.

~~~
goatinaboat
It used to be the norm in game development to sync with the refresh rate of
the CRT.

~~~
deathanatos
Is it not still the norm? (Though, with an LCD screen of course, not with a
CRT.)

Many of my games include some form of vsync option, I think. (E.g., Factorio
calls it "Wait for VSync", 7 Days to Die "VSync", Zandronum (a modern Doom
port) "Vertical Sync").

My understanding was that it was a trade-off between smooth graphics at the
display's framerate, or a faster framerate with potential tearing (on-screen
artifact). With it off, you'll "see" something as soon as the currently
rendering frame renders a pixel containing whatever is relevant. But with
Vsync on, you'd need to wait until the next frame renders (and for it to hit a
relevant pixel), introducing a slight delay, and tearing when the new frame
overwrites the old frame at the point where the display is currently
"drawing"/displaying.

(Though it does seem like it is defaulted to "off". It's my understanding the
pro gamers like the lower latency over the visual artifacting.)

~~~
aidenn0
This is not the norm; wait for vsync means the frame will be displayed during
the vblank; if it takes you 6 frames to draw, then you have a frozen image for
6 frames.

GP was talking about rendering each frame in lockstep with the vertical
refresh; there is no option to wait, you will instead get a partially drawn
frame (TFA mentions the runway disappearing in flightsims; that's a common
artifact because much of the geometric complexity was on the ground, so when
you are landing, the complexity would spike, the engine would lag behind and
some things just wouldn't get drawn in time).

------
cellular
I can't remember if talisman passed whql. But I don't think it could.

