Login

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download | RSS feed

;Object Saver v4.0 ЦаПрЮгА 12vi5 Alone

;GO=куда идти без CAPS

;проект должен только что скомпилировать таблицу
;ORG ObjTab
;DB "имяфайлаE
;DW begin in mem
;DW len
;DB page
;DW start/ещё_2_буквы_расширения
;...
        NOP
;       ORG $
nenado
;       IFN ?make
;       CALL 8026
;       RET C
;       JP C,GO
;       ENDIF

;       ORG #6000

        LD HL,ObjTab
_SVNEXT LD A,(HL)
        OR A
        RET Z
        LD DE,#5CDD
        LD BC,9
        LDIR
        LD E,(HL)
        INC HL
        LD D,(HL)
        INC HL
        PUSH DE
        LD E,(HL)
        INC HL
        LD D,(HL)
        INC HL
        LD A,(HL)
        INC HL
        LD BC,#7FFD
        OUT (C),A
        EX (SP),HL ;HL=begin
        PUSH HL,DE
        LD C,10
        CALL #3D13
        INC C
        LD C,18
        CALL NZ,#3D13
        POP DE,HL
        LD C,11
        CALL #3D13

       LD C,10 ;find desc
       CALL #3D13
        POP HL
       LD E,(HL)
       INC HL
       LD D,(HL)
       INC HL
        PUSH HL
       LD (#5CE6),DE
       LD A,C
       LD C,9 ;save desc
       CALL #3D13
        POP HL
        JR _SVNEXT

        DB "12345678C"

ObjTab

;0 SPR
        DB "0_PAGE  C"
        DW SPR
        DW 16384
        DB PG_SPR+16
        DB 32,32

;1 MAP
        DB "1_PAGE  C"
        DW DNPK
        DW LN_MAP
        DB PG_MAP+16
        DB 32,32

;3 MISC
        DB "3_PAGE  C"
        DW #C000
        DW LN_MISC
        DB PG_MISC+16
        DB 32,32

;4 HERO
        DB "4_PAGE  C"
        DW #C000
        DW LN_HERO
        DB PG_HERO+16
        DB 32,32

;6 MUZ
        DB "6_PAGE  C"
        DW INTRO
        DW LN_MUZ
        DB PG_MUZ+16
        DB 32,32

;7 VIEW
        DB "7_PAGE  C"
        DW FNT
        DW LN_VIEW
        DB PG_VIEW+16
        DB 32,32

        DB 0 ;Конец сохранения

        DISPLAY "Длина сейвера:",$-SOBJ

;       DISPLAY "Saver:",nenado,"-",$
;       DISPLAY "RUN[CS/Ent]