The .ppt of PowerPoint 97-2003 is an OLE compound file, the same container family as the old .doc, and inside it a deck is stored as a stream of binary records rather than as one XML part per slide. Text lives in TextCharsAtom and TextBytesAtom records attached to placeholder shapes, and the slide it belongs to is worked out from the record tree rather than from a filename. There is no zip and no XML anywhere in it.
What comes out is the deck's words in order, not a heading structure. A slide title is a placeholder like any other, so it arrives as a plain line of text above that slide's bullets rather than as a Markdown heading — if you want an outline with headings, you will be adding the # marks yourself. Bullets keep their nesting, and the speaker notes attached to each slide are kept too, as a blockquote after the slide's content.
One thing genuinely works less well here than in a modern deck. A table on a .ppt slide does not come out as a Markdown table: its cells arrive as a run of separate lines, so a two-column table of regions and totals reads as Region, Total, North, 42 down the page. The same deck saved as .pptx converts that table properly. If a legacy deck is mostly tables, saving it forward before converting is worth the extra step.
Decks of this vintage are usually recovered from an archive rather than freshly authored, which is the situation this page exists for: you want the words out of a deck nobody has a licence to open any more.