Прикольная игра получилась ;)
Вид для печати
Прикольная игра получилась ;)
Game contain bad joystick controll. Before start game must be tested joystick port. All ZX Spectrum computers and some other ZX clones not support kempston joystick port and IN A,(#1F) will always return #FF of attribute data from screen. All unused ports work as IN A,(#FF) !!!
If joystick port is tested as inactive, you must disable joystick in game !
kempston joy test example:
HALT ;after interrupt ula draw border and on data bus is #FF value if unused port is readed
LD BC,#001F
IN A,(C) ;if you will read joystick via IN A,(c), then kemp.joy will work also on russian ZX clone SPRINTER
AND #80 ;you can test only D7
JR Z,GAME ;if D7=0 then joy is connect
;if D7=1 then joy port not exist = you must disable joystick port reading
This game work only on ZX/clones with connected kempston joystick interface. Please fix if.
It's possible fix also on ZX basic with POKE commands.
Test joy in ZX basic:
IF IN 31 > 127 THEN POKE xxx,xx .....
It's fixed version - http://velesoft.speccy.cz/other/prel...pston_joy).zip
(add one line in basic loader)
Я даже думаю, что вместо теста на Kempston Joystick лучше дать пользователю выбор, использовать его или нет. Всякий тест использует некоторые предположения. В данном случае - что порт #1F не занят ничем другим, кроме Kempston. А это может быть не так. Например, в моей схеме расширения с открытыми портами TR-DOS считается содержимое регистра состояния ВГшки.
This can be also in ZX basic:
10 PRINT "Press K for Kempston joystick"
20 LET A=CODE INKEY$:IF NOT A THEN GOTO 20
30 IF A=107 OR A=75 THEN POKE xxxx,xx ....
40 GOTO STARTGAME
This is PRELIMINARY MONTY with selectable kempston joystick.
Only basic loader is modifiead (added some basic lines)
http://velesoft.speccy.cz/other/prel...pston_joy).zip
http://velesoft.speccy.cz/other/prel...onty-basic.png
http://velesoft.speccy.cz/other/prel..._monty-scr.png
ZIP file is updated. Yet is used better joystick testing in machine code.
http://velesoft.speccy.cz/other/prel...pston_joy).zip
HALT
IN A,(31) ;testing joy port after interrupt
AND 128 ;test only D7
LD BC,0
RET Z ;return 0 of joy is connect
INC BC
RET ;return 1 if joy is disconnect
Call from basic: IF USR xxxx THEN POKE (disable joy)
ну, тогда уж print #not pi; at sgn pi
раз пошла такая пьянка - зачем указывать `AT` ?????
достаточно просто print#not pi
да и лоадер Tom-Cat сделал уж больно навороченный.
Игра получилась просто замечательная - автору МЕГАРЕСПЕКТ!
Может, ещё какую игру с Atari стоит перетащить - например, Stealth от Brøderbund Software? ;)