Да, 32 бита не нужны, отрицательные не нужны, аргументы не нужны... Может пусть пишущий игру сам решает по поводу быстродействия?
Кстати, а кто-нибудь вообще видел через какой костыль у меня сейчас реализовано деление? А задумался почему именно так?
Подпрограммы привести к "настоящему" Паскалю. Пример см. в файлах, это то, из чего я пытался собрать demo_z.pas.
demo_z.pas.zip
zxlikepascal_lib.pas.zip
Скрытый текст
Код:procedure MapSet(p1,p2:pointer; a3,a4,a5,a6:byte); begin asm ld e,(&&p1+0) ld d,(&&p1+1) ld (map_addr_array),de ld e,(&&p2+0) ld d,(&&p2+1) ld (map_addr_sprites),de ld a,(&&a3) ld (map_xscr),a ld a,(&&a4) ld (map_yscr),a ld a,(&&a5) ld (map_width_scr),a ld a,(&&a6) ld (map_height_scr),a ld a,64 ld (map_xmax_array),a ld a,64 ld (map_ymax_array),a end; end;[свернуть]
И с выражениями проблема, некоторые опираются на то, что в компиляторе нет 32 бит и отрицательных чисел. Этакий Си-стайл, когда "250+10" может выдать и 260, и 4, и вообще что угодно.


Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 




