X-Git-Url: https://jxself.org/git/?p=zilutils.git;a=blobdiff_plain;f=zilasm%2Fheader.c;fp=zilasm%2Fheader.c;h=8eb0c3406fb430fc3521aa5b2c6bbb903451bbed;hp=0000000000000000000000000000000000000000;hb=fd453701e368225dd15e9df2e5b1752aebe454e8;hpb=093225c7cb864aaa31567969301eb5f36bd9a5f4 diff --git a/zilasm/header.c b/zilasm/header.c new file mode 100644 index 0000000..8eb0c34 --- /dev/null +++ b/zilasm/header.c @@ -0,0 +1,41 @@ +/* + * header.c -- part of ZilUtils/ZilAsm + * + * Copyright (C) 2016 Jason Self + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see + */ + +#include /* bzero */ +#include + +#include "header.h" + +Program_header_struct Program_header; + +const unsigned MAX_HEADER_LEN = 40; + +void program_header_reset(unsigned zversion) +{ + bzero(&Program_header, sizeof(Program_header)); + Program_header.version = zversion; +} + +ZMemblock *program_header_build(void) +{ + ZMemblock *zmb = zmem_init(MAX_HEADER_LEN); + zmem_putbyte(zmb, Program_header.version); + /* TODO */ + return zmb; +}