VOGONS

Common searches


First post, by lizard78

User metadata
Rank Newbie
Rank
Newbie

Hi there,
I was wondering if anyone knew of any additional documentation for the 3DNow! instruction set (or analysis). I've found the official documentation published by AMD (https://www.amd.com/system/files/TechDocs/21928.pdf) but was wondering if anything else was floating around out there. They used to publish a freely available SDK with development libraries on it - but it appears to be lost to the sands of time, shame!

Reply 1 of 10, by RetroGamer4Ever

User metadata
Rank Oldbie
Rank
Oldbie

The only official thing left is the manual for SimNow, an ancient piece of development software that used it, with the Athlon/Opteron 64-bit CPUs.

https://developer.amd.com/wordpress/media/201 … Manual4.6.1.pdf

And there are some archived materials here.....

https://kib.kiev.ua/x86docs/AMD/AMD-3DNow/

Reply 2 of 10, by lizard78

User metadata
Rank Newbie
Rank
Newbie
RetroGamer4Ever wrote on 2022-07-28, 13:03:
The only official thing left is the manual for SimNow, an ancient piece of development software that used it, with the Athlon/Op […]
Show full quote

The only official thing left is the manual for SimNow, an ancient piece of development software that used it, with the Athlon/Opteron 64-bit CPUs.

https://developer.amd.com/wordpress/media/201 … Manual4.6.1.pdf

And there are some archived materials here.....

https://kib.kiev.ua/x86docs/AMD/AMD-3DNow/

Thanks - the porting guide in the archived materials is very helpful!

Reply 3 of 10, by Sphere478

User metadata
Rank l33t++
Rank
l33t++

Interesting question, whatcha tryin to do? 😀

Sphere's PCB projects.
-
Sphere’s socket 5/7 cpu collection.
-
SUCCESSFUL K6-2+ to K6-3+ Full Cache Enable Mod
-
Tyan S1564S to S1564D single to dual processor conversion (also s1563 and s1562)

Reply 4 of 10, by lizard78

User metadata
Rank Newbie
Rank
Newbie
Sphere478 wrote on 2022-07-28, 18:28:

Interesting question, whatcha tryin to do? 😀

I'm working on a game engine with Windows 9x support. For some critical routines I'm also writing SSE implementations and the SSE instructions are very well documented online. For example, culing a leaf in the BSP tree with an AABB test is something that happens many times each frame, and can be optimized with SSE instructions (this test can be branchless with SSE). I wanted to also add 3DNow! routines but it's been difficult to find good documentation on it - knowing what the instructions are is one thing but best practices are another.

Last edited by lizard78 on 2022-07-28, 18:57. Edited 1 time in total.

Reply 5 of 10, by Sphere478

User metadata
Rank l33t++
Rank
l33t++

Any help from 3dmark? They advertised support for these instructions.

Sphere's PCB projects.
-
Sphere’s socket 5/7 cpu collection.
-
SUCCESSFUL K6-2+ to K6-3+ Full Cache Enable Mod
-
Tyan S1564S to S1564D single to dual processor conversion (also s1563 and s1562)

Reply 6 of 10, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
lizard78 wrote on 2022-07-28, 12:46:

Hi there,
I was wondering if anyone knew of any additional documentation for the 3DNow! instruction set (or analysis).

This might help:

https://www.amd.com/system/files/TechDocs/22466.pdf

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 7 of 10, by lizard78

User metadata
Rank Newbie
Rank
Newbie
Sphere478 wrote on 2022-07-28, 18:57:

Any help from 3dmark? They advertised support for these instructions.

Hmm, probably not - unless the source is available for the tool. Although one of the pdfs in the archive RetroGamer posted is very helpful, was almost exactly what I was looking for. "3DNow! Instruction Porting Guide" from August 1999. The site is down now - glad I downloaded earlier! This document has a lot of detail about best practices when coding for the K6 CPUs. I'll of course still take any other information any one else is able to turn up 😀.

Joseph_Joestar wrote on 2022-07-28, 19:00:
lizard78 wrote on 2022-07-28, 12:46:

Hi there,
I was wondering if anyone knew of any additional documentation for the 3DNow! instruction set (or analysis).

This might help:

https://www.amd.com/system/files/TechDocs/22466.pdf

Thanks!

Reply 8 of 10, by Sphere478

User metadata
Rank l33t++
Rank
l33t++

Anything of use in the k6-2+ datasheet?

https://www.amd.com/system/files/TechDocs/23542a.pdf

Sphere's PCB projects.
-
Sphere’s socket 5/7 cpu collection.
-
SUCCESSFUL K6-2+ to K6-3+ Full Cache Enable Mod
-
Tyan S1564S to S1564D single to dual processor conversion (also s1563 and s1562)

Reply 9 of 10, by jmarsh

User metadata
Rank Oldbie
Rank
Oldbie

Most 3DNow instructions are just early variants (designed to work with MMX registers) of integer instructions that were later included in SSE or SSE2. If you know SSE it should be easy enough to understand what they do just from their names.

Reply 10 of 10, by lizard78

User metadata
Rank Newbie
Rank
Newbie
Sphere478 wrote on 2022-07-29, 01:32:

Anything of use in the k6-2+ datasheet?

https://www.amd.com/system/files/TechDocs/23542a.pdf

Thanks!

jmarsh wrote on 2022-07-29, 02:36:

Most 3DNow instructions are just early variants (designed to work with MMX registers) of integer instructions that were later included in SSE or SSE2. If you know SSE it should be easy enough to understand what they do just from their names.

What each instruction does is pretty obvious (that much can be gathered from wikipedia even) but what I'm really looking for is documentation around best practices / pitfalls. Think I more or less found what I needed in the porting guide that was posted.

Thanks all!