diff --git a/minichlink/minichlink.c b/minichlink/minichlink.c
index 36dbc9bfafb521ce160db58bebc5105fc06348f8..8c3e5ecd3b7c5353a9713945985c4be9931cff0e 100644
--- a/minichlink/minichlink.c
+++ b/minichlink/minichlink.c
@@ -1307,30 +1307,26 @@ static int DefaultReadWord( void * dev, uint32_t address_to_read, uint32_t * dat
 		{
 			MCF.WriteReg32( dev, DMABSTRACTAUTO, 0 ); // Disable Autoexec.
 
-			// lw x8,0(x11) // Pull the address from DATA1
-			// lw x9,0(x8)  // Read the data at that location.
-			MCF.WriteReg32( dev, DMPROGBUF0, 0x0005a403 );
-			MCF.WriteReg32( dev, DMPROGBUF1, 0x00042483 );
+			// c.lw x8,0(x11) // Pull the address from DATA1
+			// c.lw x9,0(x8)  // Read the data at that location.
+			MCF.WriteReg32( dev, DMPROGBUF0, 0x40044180 );
 			if( autoincrement )
 			{
-				// addi x8, x8, 4
-				// sw x9, 0(x10) // Write back to DATA0
+				// c.addi x8, 4
+				// c.sw x9, 0(x10) // Write back to DATA0
 
-				MCF.WriteReg32( dev, DMPROGBUF2, 0x00440413 );
-				MCF.WriteReg32( dev, DMPROGBUF3, 0x00952023 );
+				MCF.WriteReg32( dev, DMPROGBUF1, 0xc1040411 );
 			}
 			else
 			{
-				// nop // ADDI x0, x0, 0
-				// sw x9, 0(x10) // Write back to DATA0
+				// c.nop
+				// c.sw x9, 0(x10) // Write back to DATA0
 
-				MCF.WriteReg32( dev, DMPROGBUF2, 0x00000013 );
-				MCF.WriteReg32( dev, DMPROGBUF3, 0x00952023 );
+				MCF.WriteReg32( dev, DMPROGBUF1, 0xc1040001 );
 			}
-			// sw x8, 0(x11) // Write addy to DATA1
-			// ebreak
-			MCF.WriteReg32( dev, DMPROGBUF4, 0x0085a023 );
-			MCF.WriteReg32( dev, DMPROGBUF5, 0x00100073 );
+			// c.sw x8, 0(x11) // Write addy to DATA1
+			// c.ebreak
+			MCF.WriteReg32( dev, DMPROGBUF2, 0x9002c180 );
 
 			if( iss->statetag != STTAG( "WRSQ" ) )
 			{