Inferno #01
31 декабря 2000
  Софт  

Softinka - Extractor: software to extract the files from the Spectrum emulyatorskih formats.

<b>Softinka</b> - Extractor: software to extract the files from the Spectrum emulyatorskih formats.
        Take out and put

(C) 2000 Jerri / AF


        Howdy Peoples!

 And another buggy product from Jerri. On
This time it's called "Extractor". AND
it is intended for Normal
Spektrumskih prog from the buggy PTsshnyh files.

But the main thing is that the converters
of different formats are defined as an overlay.

 So do not have to drive a lot
prog type "UNz80", "UNslt" or "UNtap",
enough to have a shell, and you need
overlays.

 So, after running the program spends
memory test and starts searching the disc in
search files with the extension "ovl".

 If there are to found, then it will require
insert the disk with overlays.

 Management shell

 "OPQA", "6789" and the arrow keys.
 "Enter" to incite one of overlays on
the current file
 "G" to run the current file
 "R" read the disc
 The remaining buttons are marked with capital
letters.

 The shell maintains a file of length
more than 255 sectors, if they slashed
to expand.

For example: Supaplex tzx

           Supaplex 0zx

           Supaplex 1zx


    How to write an overlay?

 Start address overlay # 8000 = 32768
 Maximum length

                  Overlay # 1000 = 4096

 After selecting a file the shell moves
overlay to address # 8000 and passes it
the following data:

 (DEBC) - total length of the file in bytes

  HL - a pointer to the address of the procedure


     +0 Close_File close the file


     +2 Create_File create a file

                         file header

                         (14 bytes) Adre
                         agrees Reg. HL.


     +4 Byte_to_buffer transfer to create
                         this file

                         byte of reg. A


     +6 Get_byte take reg. A

                         bytes from the stream

                         Data


  IX - the source file name
(May need to record retrieved from the 'sna' file)


  When you return if the flag 'Carry' is set, then the file was 
a mistake. 

 For example, the source 'scl'a.


          ORG # 6C76

          DISP # 8000
; ONSTART
; HL INDEX

; +0 CLOFIL
; +2 CREFIL
; +4 STOBYT
; +6 GETBYT

; DEBC FILELENGHT

; BEGINNING
BEGIN

          JP START
;
GETBYT JP $
;
STOBYT JP $
;
CREFIL JP $
; HL FILEHEADER
; FILENAME_E_AD (XE) _LN_S
CLOFIL JP $
FILEHEA DEFB "FILENAME"

          DEFB "EADLNS"
HIGLEN DEFW 0
LOWLEN DEFW 0
START

          LD A, B

          OR C

          OR E

          OR D

          SCF

          RET Z

          PUSH BC

          PUSH DE

          LD B, 4

          LD E, (HL)

          INC HL

          LD D, (HL)

          INC HL

          PUSH DE

          DJNZ $ -5

          POP HL

          LD (GETBYT +1), HL

          POP HL

          LD (STOBYT +1), HL

          POP HL

          LD (CREFIL +1), HL

          POP HL

          LD (CLOFIL +1), HL

          POP HL

          LD (HIGLEN), HL

          POP HL

          LD (LOWLEN), HL


          LD B, 8

          LD HL, DAT; skript'SINCLAIR '

          CALL GETBYT

          CP (HL)

          SCF; error if

          LD A, 1, the script does not

                     , Coincides

          RET NZ; with title

                     ; File

          INC HL

          DJNZ $ -9


          CALL GETBYT; take

                        , The number of

                        ; Files

          LD B, A

          PUSH BC

          LD HL, ENDPROG

          LD (TECCAT), HL
MAIN0 PUSH BC

          LD B, 14
MAIN00

          CALL GETBYT

          LD (HL), A

          INC HL

          DJNZ MAIN00

          POP BC

          DJNZ MAIN0

          POP BC
MAIN1 PUSH BC

          LD BC, 13

          LD HL, (TECCAT)

          LD DE, FILEHEA

          PUSH DE

          LDIR

          LD A, (HL)

          LDI

          LD (TECCAT), HL

          POP HL

          PUSH AF

          CALL CREFIL; create a file

          POP AF

          LD B, A

          LD C, 0
MAIN2 PUSH BC
MAIN3

          CALL GETBYT

          CALL STOBYT; complete file

          DEC C

          JR NZ, MAIN3

          POP BC

          DJNZ MAIN2

          CALL CLOFIL; close the file

          POP BC

          DJNZ MAIN1

          OR A; no errors

          RET
DAT DEFB "SINCLAIR"
TECCAT DEFW 0
ENDPROG
LENG EQU ENDPROG-BEGIN

 SAVE "scl" CODE BEGIN, LENG


      Well, maybe that's all.

      If you notice bugs, please write.






Other articles:

Others - overview Computer Profi OS and CP / M.

Others - Questionnaires: Sharing useful information.

Others - Russian Rulez: Elbrus - the description of the new processor developed by Russian engineers.

Interview - Jerri / Alien Factory: How did the game Walker.

For Coderz - Ports PC Profi.

For Coderz - The Muse from PC (description of audio file formats).

For Coderz - Pro ROM 48k Spectrum (# 0000 - # 1FFF).

For Coderz - Pro ROM 48k Spectrum (# 2000 - # 3FFF).

Shelezyaka - the prefix to the phone: the phone line signal amplifier.

Shelezyaka - ADC izngutri: simple analogotsifrovoy converter.

Gameland - game review Project-X.

Inferno - The authors.

Inferno - Intro.

Inferno - Managing zhunalom.

Softinka - ZX Word Updated: New, but not quite, a text editor.

Softinka - Extractor: software to extract the files from the Spectrum emulyatorskih formats.

Softinka - a review of programs for testing drives, as well as setting the magnetic head drives.

Humor - Unfiltered: marasmic real ads and statements of people both famous and not so out of "Crocodile".

Soap - Foam: e-mail section.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
Technical assistance - Dos Review 3: The material on the format of the disk operating system CP / M, ASC SOUND MASTER, RT11, SM computers RAFOS.
Demoparty - chaos construstions'oo1 report: "reigned in St. Petersburg just indescribable atmosphere of the spirit of the scene, friendship, unity, and so good to me, probably never was"

В этот день...   21 November