diff options
author | lpouzenc <lpouzenc@gmail.com> | 2013-09-07 19:19:32 +0200 |
---|---|---|
committer | lpouzenc <lpouzenc@gmail.com> | 2013-09-07 19:19:32 +0200 |
commit | e36d15da613aae1a0bd6245b8cc23c3ac5ebf95f (patch) | |
tree | 1440340d50d8703a261fd0b327c299f1dca35f63 /reverse-engineering/dosbox_snif/rsp.h | |
parent | c1ccc2a10bbe759ec3e2b6fc3243b58a623d0e16 (diff) | |
download | mplemmings-e36d15da613aae1a0bd6245b8cc23c3ac5ebf95f.tar.gz mplemmings-e36d15da613aae1a0bd6245b8cc23c3ac5ebf95f.tar.bz2 mplemmings-e36d15da613aae1a0bd6245b8cc23c3ac5ebf95f.zip |
Tout le reverse est regroupe a present. Manque le makefile car .gitignore un peu violent
Diffstat (limited to 'reverse-engineering/dosbox_snif/rsp.h')
-rw-r--r-- | reverse-engineering/dosbox_snif/rsp.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/reverse-engineering/dosbox_snif/rsp.h b/reverse-engineering/dosbox_snif/rsp.h new file mode 100644 index 0000000..c8f1378 --- /dev/null +++ b/reverse-engineering/dosbox_snif/rsp.h @@ -0,0 +1,27 @@ +#ifndef _RSP_H +#define _RSP_H + +#define LOG_DEBUG(...) +//#include <stdio.h> +//#define LOG_DEBUG(...) printf(__VA_ARGS__) + +struct rsp_state { + int sockfd; + int data_maxlen; + int noackmode; + int replied; + int command_len, response_len; + char *command, *response, *decoded; /* Malloc'ed */ + char *response_bom, *response_eom; /* Just pointers on *response string */ +}; + +int rsp_init(int sockfd, int data_maxlen, struct rsp_state *rsp); +void rsp_quit(struct rsp_state *rsp); +void rsp_send_break(struct rsp_state *rsp); +void rsp_query(struct rsp_state *rsp, char command[]); +int rsp_check_and_clear(struct rsp_state *rsp, char expected_response[]); +int rsp_recv_full(struct rsp_state *rsp); +int rsp_decode(struct rsp_state *rsp); +int rsp_poke(struct rsp_state *rsp, unsigned int poke_addr, unsigned int poke_value); + +#endif /*_RSP_H*/ |