Вход

Просмотр полной версии : GENS



Ares
03.11.2011, 23:59
Как сохранять и загружать текст и программы, в программе GENS4.
Пишу P1,60000,1:My program на дискету и он пишет i.0,40
Пытаюсь загрузить файл но он не находит его на дискете.

newart
04.11.2011, 00:50
Используешь реал или эмуль?

Shadow Maker
04.11.2011, 02:31
Newart, разница-то какая? Он везде одинаково работает.

Ares, видимо у тебя какой-то глючный Генс. Попробуй вот этот из вложения, у меня точно все ассемблировал и сохранял лет 15 назад. Ну и не забывай, что у трдоса 8 символов ограничение, пиши названия файла с учетом этого.

PS - И уже не первая тема про Генс... Он вам нравится, или просто в "Как написать игру на ассемблере" про него написано? Так можно любой другой использовать, с более удобным интерфейсом, например ZX ASM или кто-то ALASM предпочитает.

newart
04.11.2011, 03:10
Newart, разница-то какая? Он везде одинаково работает.
Разница в том что если на реале, то у человека есть дискеты, на которых может быть что то интересное... ;)

Ares
04.11.2011, 09:19
А вот еще такой вопрос вот я написал 10 ORG 60000
20 LD A,2 ; вывод на основной экран (PRINT #2).
30 CALL 5633
40 ;----------------
50 LD A,22 ; AT 20,3
60 RST 16
70 LD A,20
80 RST 16
90 LD A,3
100 RST 16
110 ;----------------
120 LD A,16 ; INK 1
130 RST 16
140 LD A,1
150 RST 16
160 ;----------------
170 LD A,17 ; PAPER 5
180 RST 16
190 LD A,5
200 RST 16
210 ;----------------
220 LD A,19 ; BRIGHT 1
230 RST 16
240 LD A,1
250 RST 16
260 ;----------------
270 LD A,"O" ; печать трех символов строки OK.
280 RST 16
290 LD A,"K"
300 RST 16
310 LD A,"."
320 RST 16
330 RET
и как тепере запустить я работаю через эмуль EmuZWin

---------- Post added at 08:17 ---------- Previous post was at 08:16 ----------


А вот еще такой вопрос вот я написал 10 ORG 60000
20 LD A,2 ; вывод на основной экран (PRINT #2).
30 CALL 5633
40 ;----------------
50 LD A,22 ; AT 20,3
60 RST 16
70 LD A,20
80 RST 16
90 LD A,3
100 RST 16
110 ;----------------
120 LD A,16 ; INK 1
130 RST 16
140 LD A,1
150 RST 16
160 ;----------------
170 LD A,17 ; PAPER 5
180 RST 16
190 LD A,5
200 RST 16
210 ;----------------
220 LD A,19 ; BRIGHT 1
230 RST 16
240 LD A,1
250 RST 16
260 ;----------------
270 LD A,"O" ; печать трех символов строки OK.
280 RST 16
290 LD A,"K"
300 RST 16
310 LD A,"."
320 RST 16
330 RET
и как тепере запустить я работаю через эмуль EmuZWin

Просто я раньше на бейсике работал а сейчас на ассамблер перешол и пока ничего не понимаю

---------- Post added at 08:19 ---------- Previous post was at 08:17 ----------


Используешь реал или эмуль?

EmuZWin

GriV
04.11.2011, 10:33
Я бы рекомендовал тебе начать пользоваться Аласмом, там руководство достаточно понятное + проблем при работе с тырдосом много меньше. При работе с большими проектами разница огромная.

---------- Post added at 10:33 ---------- Previous post was at 10:30 ----------

А вообще используйте поиск, и смотрите тему с горячими ссылками (http://zx.pk.ru/showthread.php?t=5335)

palsw
04.11.2011, 11:21
Ares, Скачай книгу "как написать игру на ассемблере" - там есть глава о gens4 и его мнемониках и командах

на вскидку нету пробелов в строке и команды пишутся в поле меток

Enigmatic
04.11.2011, 11:31
и как тепере запустить
Программу надо сохранять o,,1:PROG
В бейсике загружаешь PROG и вызываешь Rand.usr 60000
(выход из gens-а b)

Barmaley_m
04.11.2011, 12:00
В книге Николая Родионова есть такая красивая фраза: "Пользоваться же программой Disk Doctor фирмы Technology research можно только после принятия некоторой дозы алкоголя". С этим утверждением я полностью согласен и даже считаю, что его можно обобщить на ассемблер GENS4. Это страшный, ужасный ассемблер с нумерацией строк, невозможным редактором, медленный, исходный текст программ занимает кучу места в памяти. Кому такой нужен в 2011 году, когда уже в 1996 были такие альтернативы, как XAS, а до этого ZEUS, а после этого - всякие аласмы и т.д.?

Ares
04.11.2011, 12:23
В книге Николая Родионова есть такая красивая фраза: "Пользоваться же программой Disk Doctor фирмы Technology research можно только после принятия некоторой дозы алкоголя". С этим утверждением я полностью согласен и даже считаю, что его можно обобщить на ассемблер GENS4. Это страшный, ужасный ассемблер с нумерацией строк, невозможным редактором, медленный, исходный текст программ занимает кучу места в памяти. Кому такой нужен в 2011 году, когда уже в 1996 были такие альтернативы, как XAS, а до этого ZEUS, а после этого - всякие аласмы и т.д.?
А где скачать аласм ?

palsw
04.11.2011, 12:25
Ares, http://zx.pk.ru/search.php

Enigmatic
04.11.2011, 12:38
А где скачать аласм ?
http://vtrdos.ru/
http://vtrdos.ru/system/ALASM444.ZIP Alasm

Andrew771
04.11.2011, 15:02
Сообщение от newart
Используешь реал или эмуль?
EmuZWin
в EmuZWin есть собственный ассемблер и отладчик, очень хорошие. Рекомендую их

AER
04.11.2011, 18:36
там все криво

GM BIT
04.11.2011, 19:46
там все криво

Более, менее. Если, что криво ты спроси - мы поможем

GibbS
04.11.2011, 20:55
GENS и MONS - это пот, кровь и слёзы! =)

lisica
04.11.2011, 21:12
А вот еще такой вопрос вот я написал 10 ORG 60000
Учись, следующий этап надпись с атрибутами в табличку с маркером конца массива. А вывод на экран из таблички по циклу...
ps а там и до мастера доучишься.
pps я серьёзно.

Barmaley_m
04.11.2011, 21:30
И еще. Когда сам пишу программы для Z80 в последнее время, то предпочитаю пользоваться кросс-ассемблером, то есть таким ассемблером, который исполняется не на Спектруме, а на PC. Например, sjasm+. Это решает все проблемы с быстродействием и позволяет пользоваться PCшными текстовыми редакторами, что дает больше информации на экране, подсветку синтаксиса и много другой пользы. Тем же путем идут разработчики игр, например ace210 - автор Monty и Sea Dragon.

Ares
04.11.2011, 22:03
10 ORG 60000
20 LD A,2 ; вывод на основной экран (PRINT #2).
30 CALL 5633
40 ;----------------
50 LD A,22 ; AT 20,3
60 RST 16
70 LD A,20
80 RST 16
90 LD A,3
100 RST 16
110 ;----------------
120 LD A,16 ; INK 1
130 RST 16
140 LD A,1
150 RST 16
160 ;----------------
170 LD A,17 ; PAPER 5
180 RST 16
190 LD A,5
200 RST 16
210 ;----------------
220 LD A,19 ; BRIGHT 1
230 RST 16
240 LD A,1
250 RST 16
260 ;----------------
270 LD A,"O" ; печать трех символов строки OK.
280 RST 16
290 LD A,"K"
300 RST 16
310 LD A,"."
320 RST 16
330 RET
Как запустить в GENS
Пытаюсь запустить в EmuZWin

lisica
04.11.2011, 22:06
Как запустить в GENS
Откомпилируй и Rendomise USR 60000

Enigmatic
04.11.2011, 22:10
Как запустить в GENS
Нажми А ассемблирование.
Далее o,,1:PROG (запись на дискету конечного файла).
Далле сброс,выходишь в басик,загружаешь PROG по адресу 60000
и randomize usr 60000

Ares
04.11.2011, 22:15
Нажми А ассемблирование.
Далее o,,1:PROG (запись на дискету конечного файла).
Далле сброс,выходишь в басик,загружаешь PROG по адресу 60000
и randomize usr 60000
Я несовсем понимаю мне 13 лет.В бейсике Load "my prog" а потом randomize usr 60000 ?
И у меня нет диковода

Enigmatic
04.11.2011, 22:16
Так:
10 randomize usr 15619:rem:load "PROG" code 60000
20 randomize usr 60000
и run

Ares
04.11.2011, 22:20
Так:
10 randomize usr 15619:rem:load "PROG" code 60000
20 randomize usr 60000
и run

А можете сказать что я делал не так ?

Enigmatic
04.11.2011, 22:22
А можете сказать что я делал не так ?
Не понял,всмысле?
Запустилось хоть?

Ares
04.11.2011, 22:29
Не понял,всмысле?
Запустилось хоть?

я когда написал 10 строчку он вывел 5,10,20 строчку в бесике 5 стерать или не надо

Enigmatic
04.11.2011, 22:34
Нехера не пойму.
Попробуйте в Basic 128 написать,там команды вручную вводятся.

Ares
04.11.2011, 22:35
Enigmatic, Почему сразу не заработала, что я делал не так?

Enigmatic
04.11.2011, 22:38
javascript:insertnick('Ares'); Ты объясни по шагам свои действия.
А в качестве эмуля лучше Unreal используй.

Wlodek
04.11.2011, 22:59
Вообще-то в GENS максимальный номер строки 32767, и 60000 не покатит уже просто поэтому. Если реально количество строк больше (это офигеть можно), создайте несколько исходных файлов и компилируйте из них, используя встроенный в GENS механизм линкования/сборки программы из нескольких файлов. На RAM-диск GENS128 влезает дофига и ассемблится за секунды, дискета нужна только для первоначальной загрузки, так что обвинения в тормознутости тоже давно уже в прошлом. Утилиты преобразования GENS->текст и Текст->GENS давно существуют, так что и "неудобства" редактора давно уже весьма условны.
А вот как он ведёт себя на виртуальной машине (эмуляторе), не знаю, я "реальщик".
Его простота и перемещаемость, лёгкость ассемблирования в любой адрес памяти, лёгкость запуска готового кода, простота догрузки внешних бинарных файлов (шрифтов, картинок и т.д.) тоже в его пользу. Рано его списывать!
Кстати, имя файла - до 8 символов и без расширения, он сам поставит расширение "C".

Ares
04.11.2011, 23:00
Enigmatic Я через эмулятор EmuZWin запускаю GENS потом в нём пишу 10 ORG 60000
20 LD A,2
30 CALL 5633
40 ;----------------
50 LD A,22
60 RST 16
70 LD A,20
80 RST 16
90 LD A,3
100 RST 16
110 ;----------------
120 LD A,16
130 RST 16
140 LD A,1
150 RST 16
160 ;----------------
170 LD A,17
180 RST 16
190 LD A,5
200 RST 16
210 ;----------------
220 LD A,19
230 RST 16
240 LD A,1
250 RST 16
260 ;----------------
270 LD A,"O"
280 RST 16
290 LD A,"K"
300 RST 16
310 LD A,"."
320 RST 16
330 RET
Потом пишу с новой строки A он проводит ассемблирование,после ассемблирования
Я пишу o,,1:PROG и выхожу в бейсик нажатием B
Потом пишу 10 randomize usr 15619:rem:load "PROG" code 60000
И сверху появляется
5
10 randomize usr 15619:rem:load "PROG" code 60000
20 randomize usr 60000
Нажимаю run и он снизу пишет
I FOR without NEXT, 20:1

Enigmatic
04.11.2011, 23:18
и выхожу в бейсик нажатием B
Попробуй не выходить в бейсик с помощью в,а просто после сохранения файло,сделать сброс,войти в бейсик и там все набрать.
Щас попробую на своем эмуле.

Дмитрий
04.11.2011, 23:21
Нажимаю run и он снизу пишет
набери RUN 10, запустится бейсик-программа с 10й строки. судя по всему в 5й строке - это кусок загрузчика самого генса остался.

Enigmatic
04.11.2011, 23:43
Дмитрий,
Да не в том фигня.Я у себя тоже попробовал в эмуле.
При сохранении по o,,1:PROG прога почему-то не сохраняется на диске (и в emuzvine и unreal)
Я у же давно с эмулями не работаю,все на реале,объясните в чем проблема?

Ares
04.11.2011, 23:55
Дмитрий,
Да не в том фигня.Я у себя тоже попробовал в эмуле.
При сохранении по o,,1:PROG прога почему-то не сохраняется на диске (и в emuzvine и unreal)
Я у же давно с эмулями не работаю,все на реале,объясните в чем проблема?

Сейчас попробовал на реальной Пентеве,на дискету тоже не сохраняет.

---------- Post added at 22:55 ---------- Previous post was at 22:48 ----------

Этот код из книги ''Как написать игру для zx-spectrum на ассемблере''

VNN_KCS
05.11.2011, 00:32
Вот твоя программа в Аласме. Тут можно запускать, после аасемблирования , клавишей R.

GM BIT
05.11.2011, 05:30
Почитай здесь про ассемблер EmuzWin
http://zx.pk.ru/showthread.php?t=16808

Shadow Maker
05.11.2011, 16:54
Вы какой версией генса вообще пользуетесь? У меня все нормально сохраняет по O,,1:ALL например

Версия отсюда: http://zx.pk.ru/showpost.php?p=431610&postcount=3

Enigmatic
05.11.2011, 17:21
Действительно Работает.

Вы какой версией генса вообще пользуетесь?
Которая на VT.(там вобще какие-то глючные версии,один не записывает,второй при компиляции выдает ошибку диска..)

John North
05.11.2011, 17:50
Gens жутко неудобен. Тем более для начинающего кодить.
Я бы посоветовал Storm. На VT есть версия адаптированная под 3d13.
Очень он мне нравится)
Пользуясь случаем, хочу поблагодарить группу X-trade за такой замечательный редактор)

Wlodek
05.11.2011, 17:58
http://wlodeks.narod.ru/zxnet/soft/soft.htm
http://wlodeks.narod.ru/zxnet/soft/gens128.zip
http://wlodeks.narod.ru/zxnet/soft/g128help.zip
Лежит уже 18 лет!!!
Извиняюсь за резкость, но всё ещё кто-то не знает!
Прошу брать!
Ещё раз извиняюсь :) .

Andrew771
07.11.2011, 16:54
в Gens есть команда R, так что запускать готовый код можно по ней сразу после компиляции.