Разбираюсь с вызовом подпрограмм в кодах из Бэйсика по RND USR xxxx. То, что для успешного возвращения нельзя портить регистр IY, общеизвестно. Нашёл в литературе ещё такое:
„Особенным примером для программ Спектрум с 16К монитором является ситуация, когда при вычислении с плавающей запятой используются H и L регистры для сохранения адреса возврата. Поэтому, если эти регистры испорчены, то возвращение в Бейсик невозможно.“
„В микро-ЭВМ "СПЕКТР" пользователь может без каких-либо ограничений использовать альтернативный набор регистров, кроме регистров H' и L', в которых сохраняется адрес возврата к Бейсику.“
Кто знает точно?