Важная информация

User Tag List

Показано с 1 по 4 из 4

Тема: Вход в 48 режим с открытыми страницами

  1. #1
    Guru
    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Благодарностей: 1071
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Вход в 48 режим с открытыми страницами

    Поделитесь, кто как делает.
    Тупое ld (iy+1),#cc глючит иногда при выходе в Бейсик.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Guru
    Регистрация
    15.01.2005
    Адрес
    USSR
    Сообщений
    2,038
    Благодарностей: 331
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Это типа шутка от мэтра ZX Spectrum?

    Переключение из 128К в 48К "на ходу":

    CALL сюда-> DI
    LD SP,(23613)
    POP HL
    LD HL,4867 ; ERR_SP FOR 48-BASIC
    PUSH HL
    LD HL,7030 ; CONTINUE INTERPRETATOR 48-BASIC
    PUSH HL
    RES 4,(IY+1); сброс флага 128К
    LD DE,5566 ; INFORMATION FOR STREAMS
    LD HL,(23631) ; CHANS
    LD BC,15
    ADD HL,BC
    EX DE,HL ; DE=ADDR.FOR STREAMS/CHANNELS, HL=5556
    LD C,4 ; BC=4 FOR LDIR
    LDIR
    EI
    RET
    ; после возврата из этой подпрограммы будет 48К режим с открытым портом #7FFD.
    ; Если нужно закрыть порт, запишите в него нужный байт по возвращении
    ; из подпрограммы.

    Вызов этой подпрограммы в случае, если на самом деле уже включён Бейсик-48,
    не опасен, поэтому специальной проверки на 128К не требуется.

  4. Эти 3 пользователя(ей) поблагодарили Wlodek за это полезное сообщение:
    alone (13.03.2013), GriV (22.03.2013), introspec (10.04.2013)

  5. #3
    Veteran Аватар для Лас
    Регистрация
    18.11.2008
    Адрес
    пос.Полярный, ЯНАО
    Сообщений
    1,062
    Благодарностей: 780
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Видел еще такой вариант. Мопед не мой.
    Код:
            DI 
            LD      HL,4867         ;АДРЕС ВОЗВРАТА ПРИ ОШИБКЕ 48BAS
            PUSH    HL
            LD      (23613),SP
            LD      HL,7030         ;АДРЕС ВОЗВРАТА В 48BAS
            PUSH    HL               
            LD      HL,(23621)      ;ТЕКУЩАЯ СТРОКА
            LD      (23618),HL      ;БУДЕТ ВЫПОЛНЯТЬСЯ
            LD      A,(23623)       ;НОМЕР ТЕКУЩЕГО ОПЕРАТОРА
            INC     A               ;УСТАНАВЛИВАЕМ НА СЛЕДУЮЩИЙ
            LD      (23620),A       ;БУДЕТ ВЫПОЛНЯТЬСЯ
            LD      HL,(23631)
            LD      DE,15
            ADD     HL,DE               
            LD      DE,5566
            EX      DE,HL               
            LD      BC,4
            LDIR                
            LD      A,(23611)
            AND     %11101111
            LD      (23611),A
            EI 
            RET

  6. Этот пользователь поблагодарил Лас за это полезное сообщение:
    GriV (22.03.2013)

  7. #4
    Guru
    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Благодарностей: 1071
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вариант от Busy:

    runusr res 4,(iy+#01) ;; Switch to 48 basic
    ld hl,(ramtop) ;; Recontruction of stack for 48 basic
    ld (hl),#3E ;; End-of-stack mark for basic
    RETURN dec hl ;; (for detect RETURN without GOSUB)
    ld sp,hl
    ld hl,#1303 ;; Standart error handler
    push hl ;; (for displaying error messages)
    ld (errsp),sp
    jp runbas ;; 7030? Continue in 48 basic interpreter

  8. Этот пользователь поблагодарил alone за это полезное сообщение:
    GriV (22.03.2013)

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Магнитофонный вход для Speccy
    от ILoveSpeccy в разделе Unsorted
    Ответов: 14
    Последнее: 02.09.2016, 10:28
  2. Ответов: 7
    Последнее: 02.12.2009, 13:11
  3. Вход в TR-DOS по сбросу...
    от Keeper в разделе Unsorted
    Ответов: 6
    Последнее: 12.04.2009, 16:57
  4. Магнитофонный вход/выход zx-Spectrum
    от JeRrS в разделе Unsorted
    Ответов: 2
    Последнее: 21.04.2005, 17:50

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •