📄 genexp.bas
字号:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' GENEXP 1.0 '
' Copyright (c) Owen Rudge 2001 '
' '
' GenExp is a program to take the ALLEGRO.DEF file generated by '
' fixdll.sh and produce a SEAL-compatible EXP file '
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
DIM BUF AS STRING
DIM NUMIGNORE AS INTEGER
DIM IGNORE(150) AS STRING
PRINT "GenExp 1.0"
PRINT "Copyright (c) Owen Rudge 2001"
PRINT
PRINT "Reading IGNORE.TXT..."
OPEN "IGNORE.TXT" FOR INPUT AS #1
i = 0
NUMIGNORE = 0
DO UNTIL EOF(1)
LINE INPUT #1, BUF
NUMIGNORE = NUMIGNORE + 1
LOOP
'REDIM IGNORE(1 TO NUMIGNORE) AS STRING
SEEK #1, 1
i = 0
FOR i = 1 TO NUMIGNORE 'DO UNTIL EOF(1)
'i = i + 1
LINE INPUT #1, IGNORE(i)
IF LEFT$(IGNORE(i), 1) = ";" THEN
'i = i - 1
ELSEIF LEN(IGNORE(i)) >= 2 THEN
IF LEFT$(IGNORE(i), 2) = "//" THEN
'i = i - 1
END IF
END IF
NEXT i 'LOOP
CLOSE #1
PRINT "Generating ALLEGRO.EXP from ALLEGRO.DEF..."
OPEN "ALLEGRO.DEF" FOR INPUT AS #1
OPEN "ALLEGRO.EXP" FOR OUTPUT AS #2
PRINT #2, "/* Automatically generated by GENEXP on " + DATE$ + " (MM-DD-YY)"
PRINT #2, " at " + TIME$ + " */"
PRINT #2,
LINE INPUT #1, BUF ' skip comment and EXPORTS line
LINE INPUT #1, BUF
OLDPOS% = POS(0)
DO UNTIL EOF(1)
LINE INPUT #1, BUF
BUF = LTRIM$(RTRIM$(BUF))
SPOS% = INSTR(1, BUF, " ")
IF SPOS% <> 0 THEN
BUF = LEFT$(BUF, SPOS% - 1)
END IF
' PRINT BUF;
FOR i = 1 TO NUMIGNORE
'PRINT i
IF INSTR(BUF, IGNORE(i)) <> 0 THEN
'PRINT "BAD THING!"
'INPUT X$
NF% = 0
'ELSE
' GOTO NEXTLOOP
' 'PRINT " - IGNORED!"
END IF
NEXT i
IF NF% = 1 THEN
LOCATE , OLDPOS%
FOR j = 1 TO OLDLEN%
PRINT " ";
NEXT j
LOCATE , OLDPOS%
PRINT " "; BUF;
OLDLEN% = LEN(BUF)
PRINT #2, "LIBEXPORT(" + BUF + ")"
END IF
NF% = 1
NEXTLOOP:
LOOP
OPEN "ADD.TXT" FOR INPUT AS #3
DO UNTIL EOF(3)
LINE INPUT #3, BUF
IF LEFT$(BUF, 1) <> ";" THEN
PRINT #2, "LIBEXPORT(" + BUF + ")"
END IF
LOOP
PRINT #2, "/* Generation finished on " + DATE$ + " (MM-DD-YY) at " + TIME$ + " */"
CLOSE #3
CLOSE #2
CLOSE #1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -