#include <stdio.h>
#include "stdint.h"

uint64_t get_value() {
	return 0x1020304050607080ULL;
}

int main(void) {
	uint16_t flash[4] = {0};
	uintptr_t flash_addr = &flash;
	uint64_t value = get_value();
	
	uint16_t* ptr = (uint16_t*)&value;
	uint16_t* dst = (uint16_t*)flash_addr;
	for (int i=0; i<4; ++i) {
		printf("*ptr = 0x%x\n", *ptr);
		*dst++ = *ptr++;
	}
	
	printf("value = 0x%llx\n", value);
	
	return 0;
}
