Maybe a real time solution would be the best choice (surely, it will slow down each operation; however, it might be ok in your case), just define AFTER INSERT/UPDATE/DELETE triggers on a working table to keep 2 tables synchronized all the time. If you prefer to run synchronization query periodically, I'm afraid that it will take comparatively long time in any case. You can improve it as Mchl proposed. If you need to take care of updated records, you can do
REPLACE myisamTable
INNER JOIN
(
SELECT t1.*
FROM innoDbTable AS t1
LEFT JOIN myIsamTable AS t2
ON (t1.PK = t2.PK AND t1.field1 = t2.field1 AND t1.field2 = t2.field2 ... etc)
// join by all fields to detect changes. if field allows NULL, then instead of 'AND (t1.f1 = t2.f1)'
// you need to write 'AND (t1.f1 = t2.f1 OR (t1.f1 IS NULL AND t2.f1 IS NULL))`
WHERE t2.PK IS NULL
)changes ON (myisamTable.Pk = changes.Pk)
SET field1 = changes.field1, field2 = changes.field2 , //... etc
Keep in mind that you also need to take care of deleted records (if any) - it should be one more query that deletes them from the read only table.