Значок ресурса

MICRO BUG EXTRA

Нет прав на скачивание
Автор: Einar
Год: 1986
Издатели: ZX-SOFT Brasil Ltda
Языки: 🇵🇹 Португальский
Формат: 💻 BIN файл
Требования: 🖥️ ZX81 16K

Ссылки:
Страница на ZXArt
Страница на Spectrum Computing

Скриншоты:
MICROBUGEXTRA-OPEN-1.png
MICROBUGEXTRA-RUN-1.png


-------------------------------------------------------------------------------

## ## ###### ####### ## ## ###### ###### #######

## ## # ## # ## ## ## # ## # ##

####### ## ## ## ### ## ## ## ## ##

## # ## ###### ##### # ## ###### #######

## ## ## ## ## ### ## ## ## ## ##

## ## ## ## ## ## ## ## ## ## ## ##

## ## ###### ####### ## ## ## ## ## ## ##

-------------------------------------------------------------------------------

MODULE "MICRO BUG EXTRA"

(FINAL RELEASE)

-------------------------------------------------------------------------------

AUTHOR: EINAR GATTONI SAUKAS

-------------------------------------------------------------------------------





===============================================================================

INTRODUCTION

============



The operating module "EXTRA" for the MICRO BUG system is composed by a set of

generic commands designed to extend the SGM system. I started to implement it

in 1985 (soon after the original MICRO BUG project was released) but it was

never finished and released, probably because I lost interest around 1986 due

to getting involved with many other (mostly ZX Spectrum) projects...



Later in December of 1996 two things happened: I was finally able to load the

original MICRO BUG program from my tapes (after an entire day of attempts) and

I found some of my lost hand-written listings of the implementation of this

operating module. A few days before Xmas, I released on the internet a package

called "tkpak001.zip" containing detailed information about the MICRO BUG

system, and a preliminary version of "EXTRA" (with commands "S" and "U") as a

practical example of how to write a new operating module for MICRO BUG.



Afterwards I forgot about everything for a very long time, until August 2023

when I unexpectedly found the remaining of my lost hand-written listings! Now

I'm finally releasing this project as originally intended, by taking the latest

version of each routine from my old notes, typing them again, testing and

documenting everything. Enjoy it!







===============================================================================

COMMANDS

========



-------------------------------------------------------------------------------

"S [address][,step]" - Display memory sums

-------------------------------------------------------------------------------

Display a sequence of memory blocks sums calculated at regular intervals

(parameter "step"). It's useful to check data blocks after typing them from a

printed listing. This command is equivalent to "P address,address+step]" except

it scrolls up/down and supports SHIFT-A to display sums in hex/dec format.

-------------------------------------------------------------------------------



-------------------------------------------------------------------------------

"T start,end,cc,dd" - Replace byte code within memory area

-------------------------------------------------------------------------------

Search memory area between addresses "start" and "end", replacing any

occurrence of byte code "cc" with byte code "dd", and displaying number of

replaced bytes as result. Examples:

T 1E00,2000,3F,3D - replace every character 'Z' with 'X' within a memory area

T 1E00,2000,76,76 - count number of newlines within a memory area

-------------------------------------------------------------------------------



-------------------------------------------------------------------------------

"U [address]" - Display memory blocks with sums

-------------------------------------------------------------------------------

Present the same output of original command "D" except showing also the sum

from each row of 8 bytes. Most programs listed in magazine articles used this

listing format to help readers to validate assembler blocks typed-in manually.

It supports all control keys from command "D", also SHIFT-A to select sum

format (hex/dec).

-------------------------------------------------------------------------------



-------------------------------------------------------------------------------

"V start,end" - Verify memory area saved on tape

-------------------------------------------------------------------------------

Compare tape content with memory area between addresses "start" and "end",

displaying result as either "OK" or "ERRO". Use SHIFT-F to select tape speed

(normal=300 bps, high=1600 bps), SPACE to break.

-------------------------------------------------------------------------------



-------------------------------------------------------------------------------

"W [address]" - Edit memory with CHR$

-------------------------------------------------------------------------------

Present the same output of original command "M" except showing also the memory

content as character or token. It supports same control keys from command "M".

-------------------------------------------------------------------------------



-------------------------------------------------------------------------------

"X [address1,address2]" - Compare memory addresses to find next difference

-------------------------------------------------------------------------------

Compare 2 memory areas starting at provided addresses, showing only mismatched

addresses side-by-side. Press any key to see next difference, or BREAK to

interrupt. If addresses are not provided, it will resume from last execution.

-------------------------------------------------------------------------------



-------------------------------------------------------------------------------

"Y [start][,end][,pattern]" - Find pattern in memory area

-------------------------------------------------------------------------------

Find the provided pattern within a certain memory area. The pattern can be a

single byte or another memory area. If no pattern is provided, it will ask you

afterwards to input a pattern directly as string. If no end address is

provided, it will search from start address until end of memory. If no

parameters are provided, it will resume last search. For each match found, it

will display the address and first few bytes. Press any key to see next match,

or BREAK to interrupt. Examples:

Y 1E00 - Ask for string, then search for it starting at 1E00

Y 1E00,2000 - Ask for string, then search for it within memory area

Y 1E00,2000,76 - Search for byte code 76 (newline) within memory area

Y 1E00,2000,6E00,6E05 - Search for a sequence of 5 bytes within memory area

-------------------------------------------------------------------------------



-------------------------------------------------------------------------------

"Z start[,end][,pattern]" - Fill memory area with pattern

-------------------------------------------------------------------------------

Fill a certain memory area with the provided pattern. The pattern can be a

single byte or another memory area. If no pattern is provided, it will ask you

afterwards to input a pattern directly as string. If no end address is

provided, it will simply copy provided pattern to start address. The original

pattern location may overlap the memory area to be filled. If the pattern is

larger than memory area then it will be truncated, if smaller then it will be

repeated as needed. As result, it will display the affected memory area size.

Examples:

Z 7000 - Ask for string, then store it starting at address 7000

Z 7000,7030 - Ask for string, then repeat it to fill a memory area

Z 7000,7030,76 - Fill memory area with byte code 76 (newline)

Z 7000,7030,6E00,6E10 - Fill memory area with copies of a smaller memory area

Z 7000,7010,6E00,6E30 - Copy 16 bytes from 6E00 to 7000 (same as "O 6E00,6E10,7000")

-------------------------------------------------------------------------------



Notes:

- In case of commands that require the specification of a memory area (as

"start,end"), the last byte (located at address "end") is not considered.

- Symbols "[" and "]" indicate an optional parameter. If all parameters are

ommited, the command will resume from last execution point (when allowed).







===============================================================================

CONTROL KEYS

============



+-----------+-----------------------------+

| KEY | DESCRIPTION |

+-----------+-----------------------------+

| "K" (+) | Forward |

| "J" (-) | Backward |

| SPACE | Break |

| SHIFT-3 | Output format (hex/dec) |

| SHIFT-4 | Output format (hex/token) |

| SHIFT-E | Address format (hex/dec) |

| SHIFT-S | Print speed (slow/fast) |

| SHIFT-A | Sum format (hex/dec) |

| SHIFT-D | Input format (hex/dec) |

| SHIFT-F | Tape speed (slow/fast) |

| SHIFT-9 | Graphics mode (on/off) |

| SHIFT-Q | Clear screen |

| SHIFT-1 | Reset to initial screen |

| SHIFT-T | Copy screen to printer |

+-----------+-----------------------------+







===============================================================================

THE END

===============================================================================
Автор
Verter_bot
Загрузки
0
Просмотры
1
Расширение
zip
Размер
841 байт
Хэш
9e4219c8e631cbc627b70f27fd46c80f
Первый выпуск
Последнее обновление

Оценки

0.00 звезд(ы) 0 оценок
Назад
Вверх