{"id":558,"date":"2026-06-26T20:53:35","date_gmt":"2026-06-26T20:53:35","guid":{"rendered":"https:\/\/www.r3tr0.net\/?p=558"},"modified":"2026-06-26T20:53:35","modified_gmt":"2026-06-26T20:53:35","slug":"wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered","status":"publish","type":"post","link":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/","title":{"rendered":"WonderMCA: Gone before we looked, the Model 57&#8217;s early \/CD-SETUP and the POS register that never answered"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">The card that vanished from setup<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WonderMCA had been enumerating cleanly across the PS\/2 matrix for weeks. POST passed, the option ROM checksummed, the adapter ID showed up in the reference-diskette setup. Then I sat down at the IBM PS\/2&nbsp;<strong>Model 57<\/strong>&nbsp;\u2014 the 8557, a 386SX desktop \u2014 booted it, and the card was simply&nbsp;<strong>not there<\/strong>. No adapter, no slot, nothing. POST didn&#8217;t even complain; from the chassis&#8217;s point of view there was no WonderMCA in the bus at all.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s a particular kind of frustrating. A crash gives you a code. A&nbsp;<em>disappearance<\/em>&nbsp;gives you nothing. The card was clearly alive \u2014 the screenpad lit up, Core 0 was running, the UART banner printed \u2014 but the one thing it had to do during the first second of POST,&nbsp;<strong>answer the POS scan<\/strong>, it wasn&#8217;t doing.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What the card is supposed to do<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A quick refresher on Micro Channel&#8217;s Programmable Option Select. When a PS\/2 powers on, the planar walks the slots one at a time. For each slot it asserts that slot&#8217;s dedicated&nbsp;<strong>\/CD SETUP<\/strong>&nbsp;line and reads the eight POS bytes at I\/O&nbsp;<code class=\"\" data-line=\"\">0x100<\/code>\u2013<code class=\"\" data-line=\"\">0x107<\/code>. Adapter ID, enable bit, ROM base \u2014 all of it comes back over those eight reads, but&nbsp;<em>only<\/em>&nbsp;while \/CD SETUP is asserted to that slot. Outside setup,&nbsp;<code class=\"\" data-line=\"\">0x100<\/code>\u2013<code class=\"\" data-line=\"\">0x107<\/code>&nbsp;belongs to nobody and reads back as float.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So WonderMCA&#8217;s job is dead simple in principle: when the chassis reads&nbsp;<code class=\"\" data-line=\"\">0x100<\/code>\u2013<code class=\"\" data-line=\"\">0x107<\/code>&nbsp;<strong>and our \/CD SETUP is asserted<\/strong>, put the right POS byte on the data bus. Miss that, and the chassis decides the slot is empty.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On WonderMCA the bus is handled entirely by Core 1 of the RP2350B, running a tight hand-written loop out of SCRATCH_X. \/CD SETUP arrives on&nbsp;<strong>GPIO 45<\/strong>, buffered (and inverted) by a U8 SN74LVC240, so at the pin it reads&nbsp;<strong>active HIGH<\/strong>&nbsp;= asserted. The POS gate was, on the face of it, trivial:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\" data-line=\"\">if (io_device == DEV_MCA_POS) {\n    if (gpio_get(PIN_CD_SETUP))            &lt;em&gt;\/\/ asserted?&lt;\/em&gt;\n        dev_mca_pos_ior(addr_lo, &amp;MCA_Data);\n    else\n        MCA_Read = 0;                      &lt;em&gt;\/\/ not our setup cycle&lt;\/em&gt;\n}\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Read the pin. If high, answer. What could go wrong?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The first wrong turn: blame the UART<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The very first thing I noticed looked damning. On WonderMCA, GPIO 45 does double duty: it&#8217;s&nbsp;<code class=\"\" data-line=\"\">PIN_CD_SETUP<\/code>, but the build also had it declared as&nbsp;<code class=\"\" data-line=\"\">PICO_DEFAULT_UART_RX_PIN=45<\/code>. The SDK&#8217;s&nbsp;<code class=\"\" data-line=\"\">stdio_uart<\/code>&nbsp;<em>requires<\/em>&nbsp;a real UART-RX-capable pin, and there&#8217;s no spare GPIO on this board, so the console RX had been parked on the CD-SETUP pin.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That smelled like the whole bug.&nbsp;<code class=\"\" data-line=\"\">stdio_init_all()<\/code>&nbsp;configures the default UART pins \u2014 if it grabbed GPIO 45 as UART RX,&nbsp;<code class=\"\" data-line=\"\">gpio_get()<\/code>&nbsp;on the POS gate would be reading a pin owned by the wrong peripheral. And worse,&nbsp;<code class=\"\" data-line=\"\">stdio_init_all()<\/code>&nbsp;was being called&nbsp;<em>three times<\/em>, one of them&nbsp;<strong>after<\/strong>&nbsp;<code class=\"\" data-line=\"\">multicore_launch_core1()<\/code>&nbsp;\u2014 i.e. after Core 1 had already reclaimed GPIO 45 as a plain input.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I fixed all that, and it needed fixing: stdio now initialises exactly&nbsp;<strong>once, before the launch<\/strong>, Core 1 reclaims GPIO 45 as SIO with a pull-down, and the redundant post-launch&nbsp;<code class=\"\" data-line=\"\">stdio_init_all()<\/code>&nbsp;is skipped on WonderMCA. I even left a rule in&nbsp;<code class=\"\" data-line=\"\">CMakeLists.txt<\/code>: never add a post-launch&nbsp;<code class=\"\" data-line=\"\">stdio_init_all()<\/code>&nbsp;on this board.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And the card still wasn&#8217;t detected.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s the part worth dwelling on, because it&#8217;s a trap I fall into constantly: the first plausible cause that&nbsp;<em>is genuinely wrong<\/em>&nbsp;and&nbsp;<em>does<\/em>&nbsp;deserve a fix is not necessarily&nbsp;<em>the<\/em>&nbsp;cause. The UART collision was real. It just wasn&#8217;t why the Model 57 couldn&#8217;t see the card.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Instrumenting the gate<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When a theory dies, stop guessing and count things. I added three counters to the POS path and a rate-limited heartbeat from Core 0:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code class=\"\" data-line=\"\">pos_ior_count<\/code>\u00a0\u2014 POS reads we actually\u00a0<strong>served<\/strong><\/li>\n\n\n\n<li><code class=\"\" data-line=\"\">pos_iow_count<\/code>\u00a0\u2014 POS writes served<\/li>\n\n\n\n<li><code class=\"\" data-line=\"\">pos_cd_low_count<\/code>\u00a0\u2014\u00a0<code class=\"\" data-line=\"\">0x100<\/code>\u2013<code class=\"\" data-line=\"\">0x107<\/code>\u00a0cycles that\u00a0<strong>reached Core 1<\/strong>\u00a0but were gated off because the CD-SETUP read came back LOW<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The whole point was to split three failure modes that look identical from the outside:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code class=\"\" data-line=\"\">ior &gt; 0<\/code>\u00a0\u2192 POST is reading our POS regs, gate open, we&#8217;re fine.<\/li>\n\n\n\n<li><code class=\"\" data-line=\"\">cd_low &gt; 0<\/code>\u00a0with\u00a0<code class=\"\" data-line=\"\">ior = 0<\/code>\u00a0\u2192 cycles reach us, but the gate is shut.<\/li>\n\n\n\n<li>all zero \u2192 the cycle never even arrives \u2014 a decode\/CPLD problem, not the gate.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">I flashed it, booted the Model 57, and watched the serial console:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\" data-line=\"\">&#091;mca_pos] ior=1 iow=0 cd_low=345 cd_setup=0\n&#091;mca_pos] ior=1 iow=0 cd_low=365 cd_setup=0\n&#091;mca_pos] ior=1 iow=0 cd_low=380 cd_setup=0\n&#091;mca_pos] ior=1 iow=0 cd_low=407 cd_setup=0\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">There it was, in three numbers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The cycles&nbsp;<strong>were arriving<\/strong>&nbsp;\u2014&nbsp;<code class=\"\" data-line=\"\">cd_low<\/code>&nbsp;climbing into the hundreds means the chassis was hammering&nbsp;<code class=\"\" data-line=\"\">0x100<\/code>\u2013<code class=\"\" data-line=\"\">0x107<\/code>&nbsp;and the address decode was routing every one of them to our POS handler. So the decode was fine. But&nbsp;<code class=\"\" data-line=\"\">gpio_get(PIN_CD_SETUP)<\/code>&nbsp;read&nbsp;<strong>LOW on every single one<\/strong>. We served exactly&nbsp;<strong>one<\/strong>&nbsp;POS read, ever (<code class=\"\" data-line=\"\">ior=1<\/code>, almost certainly a fluke), and rejected the other 345+.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The gate was slamming the door on every POS read the Model 57 sent us.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">&#8220;It&#8217;s inverted&#8221; \u2014 and then the real timing<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">My first reaction was polarity. If the buffer wasn&#8217;t inverting the way I thought, asserted would read LOW and the gate would be backwards. I nearly flipped it. But the comments, the pull-down, and a quick check all said the same thing: U8&nbsp;<em>does<\/em>&nbsp;invert, asserted&nbsp;<em>is<\/em>&nbsp;HIGH at GPIO 45, and the gate sense was correct.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So I put the logic analyzer on the actual \/CD SETUP line and the GPIO, and that&#8217;s when the Model 57 showed its hand:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>On the Model 57, \/CD SETUP asserts&nbsp;<em>very<\/em>&nbsp;early \u2014 before \/ADL \u2014 and deasserts in the&nbsp;<em>middle<\/em>&nbsp;of \/CMD.<\/strong><\/p>\n<\/blockquote>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"284\" src=\"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55-1024x284.png\" alt=\"\" class=\"wp-image-559\" srcset=\"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55-1024x284.png 1024w, https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55-300x83.png 300w, https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55-768x213.png 768w, https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55-1536x426.png 1536w, https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55-600x166.png 600w, https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55.png 1754w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Read that again, because it&#8217;s the whole bug. \/CD SETUP is not held for the duration of the command phase on this chassis. It goes active before the address strobe and is&nbsp;<strong>already gone halfway through the command<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now look at&nbsp;<em>when<\/em>&nbsp;our gate read it. The Core 1 loop polls for \/ADL, latches the address the instant \/ADL fires (call that T=0), then runs through a FIFO wait, the&nbsp;<code class=\"\" data-line=\"\">IO_Index_T<\/code>&nbsp;lookup, the A_AB mux restore, and finally branches into the C-level IOR handler \u2014 where&nbsp;<code class=\"\" data-line=\"\">gpio_get(PIN_CD_SETUP)<\/code>&nbsp;lived. That read happens somewhere around&nbsp;<strong>T+20 cycles and beyond<\/strong>, deep into \/CMD.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On a well-behaved chassis that holds \/CD SETUP flat across the whole cycle, reading it at T+20 is fine. On the Model 57, by T+20&nbsp;<strong>it had already deasserted.<\/strong>&nbsp;We were reading the pin a clean ~70 ns&nbsp;<em>after<\/em>&nbsp;the signal we cared about had vanished. The card wasn&#8217;t broken, the gate wasn&#8217;t backwards, the polarity was right. We were just&nbsp;<strong>looking too late.<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The fix: catch it on the way past<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The address is already captured early \u2014 the ASM grabs it right at \/ADL. The answer was to grab \/CD SETUP at the&nbsp;<em>same<\/em>&nbsp;moment, while it&#8217;s still asserted, instead of re-reading the live pin 70 ns later.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">GPIO 45 sits in the RP2350&#8217;s high GPIO bank (32\u201347), which you read in one shot with&nbsp;<code class=\"\" data-line=\"\">mrc p0, #0, Rd, c0, c9<\/code>. GPIO 45 is&nbsp;<strong>bit 13<\/strong>&nbsp;of that word. So right in the I\/O dispatch path, at roughly&nbsp;<strong>T+8<\/strong>&nbsp;\u2014 early in \/CMD, while \/CD SETUP is still solidly asserted \u2014 I take a single high-bank snapshot and carry it out of the ASM:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\" data-line=\"\">&quot;5:&quot;\n&quot;   mrc  p0, #0, r0,      c0, c8   &quot;   \/\/ address (low bank)      T+7\n&quot;   mrc  p0, #0, %&#091;iohi], c0, c9   &quot;   \/\/ RAW high-bank snapshot   T+8  &lt;-- \/CD SETUP still asserted\n&quot;   ubfx r0, r0, #DBASE, #12       &quot;   \/\/ addr_lo\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The C handler then just decodes the bit out of the frozen snapshot instead of touching the pin:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\" data-line=\"\">bool io_cd_setup = (io_hi &gt;&gt; (PIN_CD_SETUP - 32)) &amp; 1u;  &lt;em&gt;\/\/ latched at T+8, not re-read mid-\/CMD&lt;\/em&gt;\nif (io_device == DEV_MCA_POS &amp;&amp; io_cd_setup)\n    dev_mca_pos_ior(addr_lo, &amp;MCA_Data);\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s a couple of instructions on the I\/O path \u2014 which is CHRDY-extended, so there&#8217;s budget to spare \u2014 and it changes nothing about the address or data timing. It just samples the signal&nbsp;<em>when it&#8217;s there<\/em>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Confirmation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Same console, next boot:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\" data-line=\"\">&#091;mca_pos] ior=28 iow=9  cd_low=520 cd_setup=0\n&#091;mca_pos] ior=34 iow=11 cd_low=566 cd_setup=0\n&#091;mca_pos] ior=42 iow=38 cd_low=600 cd_setup=0\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><code class=\"\" data-line=\"\">ior<\/code>&nbsp;climbing in steps as the chassis walks our eight POS bytes \u2014 and&nbsp;<code class=\"\" data-line=\"\">iow<\/code>&nbsp;climbing too, which is even better: that&#8217;s the BIOS not just&nbsp;<em>reading<\/em>&nbsp;our adapter ID but&nbsp;<strong>writing<\/strong>&nbsp;the POS option bytes, enabling the card and programming its ROM base. The Model 57 saw WonderMCA in the slot, configured it, and moved on. (<code class=\"\" data-line=\"\">cd_low<\/code>&nbsp;keeps rising because it counts every&nbsp;<code class=\"\" data-line=\"\">0x100<\/code>&nbsp;cycle for the&nbsp;<em>other<\/em>&nbsp;slots, where our \/CD SETUP is correctly deasserted \u2014 that&#8217;s expected, not an error. And&nbsp;<code class=\"\" data-line=\"\">cd_setup=0<\/code>&nbsp;in the print is just the Core 0 heartbeat sampling the pin asynchronously, nowhere near our brief selection window \u2014 the&nbsp;<code class=\"\" data-line=\"\">ior<\/code>\/<code class=\"\" data-line=\"\">iow<\/code>&nbsp;counters are the real measure.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Card detected.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The same trap, two more signals<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Once you&#8217;ve been bitten by &#8220;the signal was gone before the C code looked,&#8221; you start seeing it everywhere \u2014 and rightly so. Two more bus qualifiers live in that exact same high-bank snapshot, and both had the same latent risk:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\/TC<\/strong>\u00a0(terminal count, end-of-DMA) on\u00a0<strong>GPIO 39<\/strong>\u00a0= bit 7. On the scope it asserts\u00a0<strong>+10 ns after \/ADL<\/strong>\u00a0\u2014 so our T+8-ish snapshot catches it cleanly, while the old\u00a0<code class=\"\" data-line=\"\">gpio_get(PIN_R_TC)<\/code>\u00a0deep in the DMA consume path was reading it ~90 ns later, right at its deassert edge. That late read was almost certainly part of why the real \/TC EOT had always been flaky enough that we&#8217;d fallen back to a byte-count.<\/li>\n\n\n\n<li><strong>DMA grant<\/strong>\u00a0on\u00a0<strong>GPIO 38<\/strong>\u00a0= bit 6. Grant can drop\u00a0<em>as the transfer ends<\/em>, so a late read risks missing the capture on exactly the\u00a0<strong>last (\/TC) byte<\/strong>\u00a0\u2014 the one that matters most.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Both now come from the same&nbsp;<code class=\"\" data-line=\"\">mrc \u2026 c9<\/code>&nbsp;word, sampled the instant they&#8217;re valid. One register read, three signals, all frozen at the moment the cycle begins instead of whenever the C handler happens to get around to them.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What I took away<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>A signal you can read is not a signal that&#8217;s still there.<\/strong>\u00a0On a bus,\u00a0<em>when<\/em>\u00a0you sample is as much a part of correctness as\u00a0<em>what<\/em>\u00a0you sample. The Model 57 holds \/CD SETUP for a narrower window than the chassis I&#8217;d been developing against, and 70 ns of handler latency was the whole difference between a card and an empty slot.<\/li>\n\n\n\n<li><strong>Latch at the edge, decode at leisure.<\/strong>\u00a0The address was already captured early; the qualifiers should have been too. Grabbing one high-bank GPIO word the moment \/ADL fires, and pulling the bits out in C later, costs almost nothing and removes an entire class of &#8220;deasserted-before-we-looked&#8221; bugs.<\/li>\n\n\n\n<li><strong>A necessary fix is not always the fix.<\/strong>\u00a0The UART-on-GPIO-45 collision was real and got cleaned up \u2014 but it wasn&#8217;t the reason. Counting beats guessing: three counters turned an invisible disappearance into &#8220;the cycle arrives, the pin reads low, every time,&#8221; and that sentence wrote the fix.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Different MCA chassis assert the same signals with surprisingly different timing, all of it legal under the IBM spec. WonderMCA now samples the bus qualifiers when they&#8217;re guaranteed valid, not when it&#8217;s convenient \u2014 and the Model 57, at last, knows the card is there.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The card that vanished from setup WonderMCA had been enumerating cleanly across the PS\/2 matrix for weeks. POST passed, the option ROM checksummed, the adapter ID showed up in the reference-diskette setup. Then I sat down at the IBM PS\/2&nbsp;Model 57&nbsp;\u2014 the 8557, a 386SX desktop \u2014 booted it, and the card was simply&nbsp;not there. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[20],"tags":[],"class_list":["post-558","post","type-post","status-publish","format-standard","hentry","category-ibm-ps-2"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>WonderMCA: Gone before we looked, the Model 57&#039;s early \/CD-SETUP and the POS register that never answered - R3TR0<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"WonderMCA: Gone before we looked, the Model 57&#039;s early \/CD-SETUP and the POS register that never answered - R3TR0\" \/>\n<meta property=\"og:description\" content=\"The card that vanished from setup WonderMCA had been enumerating cleanly across the PS\/2 matrix for weeks. POST passed, the option ROM checksummed, the adapter ID showed up in the reference-diskette setup. Then I sat down at the IBM PS\/2&nbsp;Model 57&nbsp;\u2014 the 8557, a 386SX desktop \u2014 booted it, and the card was simply&nbsp;not there. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/\" \/>\n<meta property=\"og:site_name\" content=\"R3TR0\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-26T20:53:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1754\" \/>\n\t<meta property=\"og:image:height\" content=\"486\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"vincent\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"vincent\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/\"},\"author\":{\"name\":\"vincent\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#\\\/schema\\\/person\\\/89fd8e8a3c946f2018b269326dc6c1bf\"},\"headline\":\"WonderMCA: Gone before we looked, the Model 57&#8217;s early \\\/CD-SETUP and the POS register that never answered\",\"datePublished\":\"2026-06-26T20:53:35+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/\"},\"wordCount\":1772,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.r3tr0.net\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/Screen-Shot-2026-06-26-at-22.51.55-1024x284.png\",\"articleSection\":[\"IBM PS\\\/2\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/\",\"url\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/\",\"name\":\"WonderMCA: Gone before we looked, the Model 57's early \\\/CD-SETUP and the POS register that never answered - R3TR0\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.r3tr0.net\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/Screen-Shot-2026-06-26-at-22.51.55-1024x284.png\",\"datePublished\":\"2026-06-26T20:53:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.r3tr0.net\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/Screen-Shot-2026-06-26-at-22.51.55.png\",\"contentUrl\":\"https:\\\/\\\/www.r3tr0.net\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/Screen-Shot-2026-06-26-at-22.51.55.png\",\"width\":1754,\"height\":486},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/2026\\\/06\\\/26\\\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.r3tr0.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"WonderMCA: Gone before we looked, the Model 57&#8217;s early \\\/CD-SETUP and the POS register that never answered\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#website\",\"url\":\"https:\\\/\\\/www.r3tr0.net\\\/\",\"name\":\"R3TR0\",\"description\":\"New silicon for old machines, Home of the SmartDisk II Apple II disk emulator and the WonderMCA expansion card for IBM PS\\\/2. Open retro hardware, firmware updates, guides and downloads.\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.r3tr0.net\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#organization\",\"name\":\"R3TR0\",\"url\":\"https:\\\/\\\/www.r3tr0.net\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.r3tr0.net\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/r3tr0-logo-invoice-v2.png\",\"contentUrl\":\"https:\\\/\\\/www.r3tr0.net\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/r3tr0-logo-invoice-v2.png\",\"width\":1011,\"height\":378,\"caption\":\"R3TR0\"},\"image\":{\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.r3tr0.net\\\/#\\\/schema\\\/person\\\/89fd8e8a3c946f2018b269326dc6c1bf\",\"name\":\"vincent\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/121b29f8056abaf94fa23028f9c9bf59aba33045afa852ac26d637729e743717?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/121b29f8056abaf94fa23028f9c9bf59aba33045afa852ac26d637729e743717?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/121b29f8056abaf94fa23028f9c9bf59aba33045afa852ac26d637729e743717?s=96&d=mm&r=g\",\"caption\":\"vincent\"},\"sameAs\":[\"https:\\\/\\\/www.r3tr0.net\"],\"url\":\"https:\\\/\\\/www.r3tr0.net\\\/index.php\\\/author\\\/vincent\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"WonderMCA: Gone before we looked, the Model 57's early \/CD-SETUP and the POS register that never answered - R3TR0","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/","og_locale":"en_US","og_type":"article","og_title":"WonderMCA: Gone before we looked, the Model 57's early \/CD-SETUP and the POS register that never answered - R3TR0","og_description":"The card that vanished from setup WonderMCA had been enumerating cleanly across the PS\/2 matrix for weeks. POST passed, the option ROM checksummed, the adapter ID showed up in the reference-diskette setup. Then I sat down at the IBM PS\/2&nbsp;Model 57&nbsp;\u2014 the 8557, a 386SX desktop \u2014 booted it, and the card was simply&nbsp;not there. [&hellip;]","og_url":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/","og_site_name":"R3TR0","article_published_time":"2026-06-26T20:53:35+00:00","og_image":[{"width":1754,"height":486,"url":"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55.png","type":"image\/png"}],"author":"vincent","twitter_card":"summary_large_image","twitter_misc":{"Written by":"vincent","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/#article","isPartOf":{"@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/"},"author":{"name":"vincent","@id":"https:\/\/www.r3tr0.net\/#\/schema\/person\/89fd8e8a3c946f2018b269326dc6c1bf"},"headline":"WonderMCA: Gone before we looked, the Model 57&#8217;s early \/CD-SETUP and the POS register that never answered","datePublished":"2026-06-26T20:53:35+00:00","mainEntityOfPage":{"@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/"},"wordCount":1772,"commentCount":0,"publisher":{"@id":"https:\/\/www.r3tr0.net\/#organization"},"image":{"@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/#primaryimage"},"thumbnailUrl":"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55-1024x284.png","articleSection":["IBM PS\/2"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/","url":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/","name":"WonderMCA: Gone before we looked, the Model 57's early \/CD-SETUP and the POS register that never answered - R3TR0","isPartOf":{"@id":"https:\/\/www.r3tr0.net\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/#primaryimage"},"image":{"@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/#primaryimage"},"thumbnailUrl":"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55-1024x284.png","datePublished":"2026-06-26T20:53:35+00:00","breadcrumb":{"@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/#primaryimage","url":"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55.png","contentUrl":"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/06\/Screen-Shot-2026-06-26-at-22.51.55.png","width":1754,"height":486},{"@type":"BreadcrumbList","@id":"https:\/\/www.r3tr0.net\/index.php\/2026\/06\/26\/wondermca-gone-before-we-looked-the-model-57s-early-cd-setup-and-the-pos-register-that-never-answered\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.r3tr0.net\/"},{"@type":"ListItem","position":2,"name":"WonderMCA: Gone before we looked, the Model 57&#8217;s early \/CD-SETUP and the POS register that never answered"}]},{"@type":"WebSite","@id":"https:\/\/www.r3tr0.net\/#website","url":"https:\/\/www.r3tr0.net\/","name":"R3TR0","description":"New silicon for old machines, Home of the SmartDisk II Apple II disk emulator and the WonderMCA expansion card for IBM PS\/2. Open retro hardware, firmware updates, guides and downloads.","publisher":{"@id":"https:\/\/www.r3tr0.net\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.r3tr0.net\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.r3tr0.net\/#organization","name":"R3TR0","url":"https:\/\/www.r3tr0.net\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.r3tr0.net\/#\/schema\/logo\/image\/","url":"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/09\/r3tr0-logo-invoice-v2.png","contentUrl":"https:\/\/www.r3tr0.net\/wp-content\/uploads\/2026\/09\/r3tr0-logo-invoice-v2.png","width":1011,"height":378,"caption":"R3TR0"},"image":{"@id":"https:\/\/www.r3tr0.net\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.r3tr0.net\/#\/schema\/person\/89fd8e8a3c946f2018b269326dc6c1bf","name":"vincent","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/121b29f8056abaf94fa23028f9c9bf59aba33045afa852ac26d637729e743717?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/121b29f8056abaf94fa23028f9c9bf59aba33045afa852ac26d637729e743717?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/121b29f8056abaf94fa23028f9c9bf59aba33045afa852ac26d637729e743717?s=96&d=mm&r=g","caption":"vincent"},"sameAs":["https:\/\/www.r3tr0.net"],"url":"https:\/\/www.r3tr0.net\/index.php\/author\/vincent\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/posts\/558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/comments?post=558"}],"version-history":[{"count":1,"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/posts\/558\/revisions"}],"predecessor-version":[{"id":560,"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/posts\/558\/revisions\/560"}],"wp:attachment":[{"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/media?parent=558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/categories?post=558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.r3tr0.net\/index.php\/wp-json\/wp\/v2\/tags?post=558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}