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

User Tag List

Страница 22 из 54 ПерваяПервая ... 181920212223242526 ... ПоследняяПоследняя
Показано с 211 по 220 из 531

Тема: ZX Like Pascal

  1. #211
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ок, перепроверю Z.

    - - - Добавлено - - -

    Тут лежит исходник ZX Like Pascal, в нем, кажется, обновленный Z, где не нужно ничего колдовать: http://zx-pk.ru/threads/54-podderzhi...l=1#post810433

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

  3. #212
    Guru Аватар для ALKO
    Регистрация
    25.09.2009
    Адрес
    Одесса
    Сообщений
    2,257
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    183
    Поблагодарили
    86 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    Есть bat-ник для демо Z
    Компилил через БАТ-ник

  4. #213
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ALKO Посмотреть сообщение
    Компилил через БАТ-ник
    Возьми обновленный исходник Z тут в исходниках ZX Like Pascal, он должен без проблем запускаться.

  5. #214
    Master
    Регистрация
    14.04.2013
    Адрес
    г. Ростов-на-Дону
    Сообщений
    608
    Спасибо Благодарностей отдано 
    70
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    48 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Задам вопрос в этой теме.
    Меня в demo_z.prg смущает этот код:
    Код:
    		if y_put>(y_map_scr-y_max_obj)
    			then y_min_lim:=y_map_scr-y_max_obj
    			else y_min_lim:=1;
    При запуске y_map_scr=3, y_max_obj=5.
    Результат вычитания в скобках отрицательный, результат сравнения будет true и в переменную y_min_lim, которая типа byte, запишется "отрицательное" число 254.
    А дальше сравнение
    Код:
    ... and (y_put>=y_min_lim) and ...
    которое даст false и вывод спрайта не произойдёт.
    Объясни, пожалуйста, как это работает в твоём компиляторе.

  6. #215
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Bolt Посмотреть сообщение
    Результат вычитания в скобках отрицательный
    В ZX Like Pascal нет отрицательных чисел, интерпретируется как положительное. Компилируется в код:
    Код:
    L18
          ld    a,(_Y_PUT)
          ld    l,a
          ld    h,0
          push  hl
          ld    a,(_Y_MAP_SCR)
          ld    l,a
          ld    h,0
          ld    de,5
          and   a
          sbc   hl,de
          pop   de
          and   a
          sbc   hl,de
          jp    nc,L19

  7. #216
    Master
    Регистрация
    14.04.2013
    Адрес
    г. Ростов-на-Дону
    Сообщений
    608
    Спасибо Благодарностей отдано 
    70
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    48 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    В ZX Like Pascal нет отрицательных чисел, интерпретируется как положительное.
    Вон оно чо...

  8. #217
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну насколько я помню, в TurboPascal, если тип переменных в выражениях byte или word, тоже нет отрицательных чисел, а проворачивается. Например, 5-6=255, насколько помню
    А ты можешь тогда ввести функцию abs:
    Код:
    if y_put>abs(y_map_scr-y_max_obj)
    			then y_min_lim:=y_map_scr-y_max_obj
    			else y_min_lim:=1;

  9. #218
    Guru Аватар для Shiny
    Регистрация
    19.01.2017
    Адрес
    г. Арзамас
    Сообщений
    2,125
    Записей в дневнике
    37
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    22
    Поблагодарили
    11 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    для справочки: как HitechC обходится:
    Код:
    main()
    {
    	int xm=-127;
    	int ym=96;
    
    	if (xm>ym) xm=-xm;
    
    }
    
    RAM:80F7                 ld      (ix+0FEh), 81h ; 'Á'
    RAM:80FB                 ld      (ix+0FFh), 0FFh
    RAM:80FF                 ld      (ix+0FCh), 60h ; '`'
    RAM:8103                 ld      (ix+0FDh), 0
    RAM:8107                 ld      e, (ix+0FEh)
    RAM:810A                 ld      d, (ix+0FFh)
    RAM:810D                 ld      l, (ix+0FCh)
    RAM:8110                 ld      h, (ix+0FDh)
    RAM:8113                 call    sub_813D        ; if (xm>ym) xm=-xm;
    RAM:8116                 jp      p, loc_812B
    RAM:8119                 ld      e, (ix+0FEh)    ; xm=-xm
    RAM:811C                 ld      d, (ix+0FFh)
    RAM:811F                 ld      hl, 0
    RAM:8122                 or      a
    RAM:8123                 sbc     hl, de
    RAM:8125                 ld      (ix+0FEh), l
    RAM:8128                 ld      (ix+0FFh), h
    RAM:812B
    RAM:812B loc_812B:                               ; CODE XREF: sub_80F4+22j
    
    ;
    RAM:813D sub_813D:                               ; CODE XREF: sub_80F4+1Fp
    RAM:813D                 ld      a, h
    RAM:813E                 xor     d
    RAM:813F                 jp      m, loc_8145
    RAM:8142                 sbc     hl, de
    RAM:8144                 ret
    RAM:8145 ; ---------------------------------------------------------------------------
    RAM:8145
    RAM:8145 loc_8145:                               ; CODE XREF: sub_813D+2j
    RAM:8145                 ld      a, h
    RAM:8146                 and     80h ; 'À'
    RAM:8148                 sbc     hl, de
    RAM:814A                 inc     a
    RAM:814B                 ret

  10. #219
    Veteran
    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,858
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    62 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Свежий исходник демо игры Z на ZX Like Pascal тут

  11. #220
    Master
    Регистрация
    14.04.2013
    Адрес
    г. Ростов-на-Дону
    Сообщений
    608
    Спасибо Благодарностей отдано 
    70
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    48 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    Текущее демо Z и исходник на ZX Like Pascal. Т.к. теперь появилась инициализация массивов при объявлении, экономится много места в памяти, еще есть 13 кб свободных примерно.
    Напиши, пожалуйста, как распределена память и как там 13 килобайт свободных осталось. 14 килобайт экраны, таблиц и спрайтов килобайт 18, остаётся 16 килобайт для кода. Он что, в 3 килобайта уместился?

Страница 22 из 54 ПерваяПервая ... 181920212223242526 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. PASCAL + MACRO11 (УКНЦ-ДВК).
    от hobot в разделе ДВК, УКНЦ
    Ответов: 341
    Последнее: 15.01.2022, 17:30
  2. Turbo Pascal для msx/msx2
    от Оззя в разделе MSX
    Ответов: 4
    Последнее: 23.02.2020, 23:59
  3. в розыске дисковая версия Pascal.
    от goblinish в разделе Программирование
    Ответов: 18
    Последнее: 16.08.2011, 16:30
  4. Pascal
    от Andrew771 в разделе Программирование
    Ответов: 22
    Последнее: 24.05.2011, 21:20
  5. Скопировать/вставить из/в HiSoft Pascal в эмуляторе
    от kit в разделе Программирование
    Ответов: 1
    Последнее: 05.02.2010, 15:35

Ваши права

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