📄 subs.h
字号:
/*
Copyright 1994-2003 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.
You may contact the author at:
mailto::camille@bluegrass.net
or by snail mail at:
David Lindauer
850 Washburn Ave Apt 99
Louisville, KY 40222
*/
/* SUBS.H */
string_ptr
add_extension_to_file (string_ptr fn,
string_ptr ext);
void
add_files_to_list (file_info_list *file_list,
string_ptr fn);
void
align_active_segment (void);
byte_ptr
allocate_memory (bit_32 size);
string_ptr
allocate_string (bit_16 length);
string_ptr
change_extension (string_ptr fn,
string_ptr ext);
bit_16
checksum (bit_32 len,
byte *sym);
int_16
compare_short_string (string_ptr left,
string_ptr right);
int_16
compare_string (string_ptr left,
string_ptr right);
void
complete_a_filename_token (void);
string_ptr
concat_string (string_ptr dest,
string_ptr source);
string_ptr
concat_char_to_string (string_ptr dest,
byte c);
string_ptr
copy_string (string_ptr dest,
string_ptr source);
void
create_codeview_data (byte_ptr *data_ptr,
bit_32_ptr data_len);
bit_32
createLXOutputSection (bit_32 flags) ;
bit_32
createOutputSection (byte_ptr name,
bit_32 winflags) ;
string_ptr
cut_string (string_ptr dest,
bit_16 at,
bit_16 len);
bit_16
continue_file_search (void);
string_ptr
default_directory (string_ptr drive,
string_ptr directory);
string_ptr
default_drive (void);
string_ptr
duplicate_string (string_ptr s);
void
eat_white_space (void);
string_ptr
edit_number_string (string_ptr s,
char_ptr format,
...);
char_ptr
elapsed_time (bit_32 start,
bit_32 stop);
void
end_linker (bit_16 return_code);
void
enter_lx_fixup (bit_32 target,
bit_32 address,
loc_type location) ;
void
enter_pe_fixup (bit_32 address,
loc_type location) ;
void
enter_pe_import_fixup (byte_ptr location_ptr,
bit_32 location_address,
public_entry_ptr import,
bit_32 isdata) ;
int_32
far_compare (byte_ptr left,
byte_ptr right,
bit_32 len);
bit_32
far_index (byte_ptr dest,
byte c);
bit_32
far_match (byte_ptr pattern,
byte_ptr source,
bit_32 len);
byte_ptr
far_move (byte_ptr dest,
byte_ptr source,
bit_32 len);
byte_ptr
far_move_left (byte_ptr dest,
byte_ptr source,
bit_32 len);
byte_ptr
far_set (byte_ptr dest,
byte source,
bit_32 len);
byte_ptr
far_to_lower (byte_ptr dest,
bit_32 len);
void
file_close_for_read (void);
void
file_close_for_write (void);
void
file_delete (file_info_ptr file_info);
bit_16
file_exists (string_ptr fn,
bit_16 attr);
void
file_IO_limit (bit_16 limit);
void
file_open_for_read (file_info_ptr file_info);
void
file_open_for_write (file_info_ptr file_info);
void
file_position (bit_32 position);
void
file_read (byte_ptr into,
bit_32 length);
void
file_write (byte_ptr from,
bit_32 length);
void
fixup_FIXUPP_record (void);
void
fixup_FORREF_record (void);
void
fixup_LEDATA_record (void);
void
fixup_LIDATA_IDB (void);
void
fixup_LIDATA_record (void);
void
fixups (void);
bit_32
frame (void);
void
get_filename_token (bit_16 required,
file_info_list *list);
void
get_filenames_from_user (bit_16 argc,
byte *argv[]);
token_stack_ptr
get_free_token_source_element (void);
void
get_order_token (void);
bit_32
get_time (void);
bit_16
index_string (string_ptr s,
bit_16 from,
string_ptr pattern);
void
initialize_memory (void);
FILE
*input_open (string_ptr fn);
void
library_directory_hash (byte_ptr sym,
bit_32 len,
bit_16 *starting_block,
bit_16 *delta_block,
bit_16 *starting_entry,
bit_16 *delta_entry);
void
linker_error (int_16 severity,
char_ptr format,
...);
void
linker_message (char_ptr format,
...);
void
linker_statistics (void);
void
link_map (void);
void
ListDelete (Generic_Element_ptr elem,
Generic_Element_list *lst);
void
ListInsert (Generic_Element_ptr elem,
bit_16 type_insert,
Generic_Element_ptr aftr,
Generic_Element_list *lst);
void
ListPop (Generic_Element_list *lst,
Generic_Element_ptr *elem);
void
load_stub (byte_ptr *pstubData,
bit_32_ptr pstubSize) ;
group_entry_ptr
lookup_group (lname_entry_ptr group_lname);
lname_entry_ptr
lookup_lname (bit_16 len,
byte *sym);
public_entry_ptr
lookup_public (bit_16 len,
byte *sym,
bit_16 module);
segment_entry_ptr
lookup_segment (lname_entry_ptr segment_lname,
lname_entry_ptr class_lname,
combine_type combine);
string_ptr
lowercase_string (string_ptr s);
string_ptr
make_constant_string (byte *s);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -