1486e58b1SAlex Bennée /* 2486e58b1SAlex Bennée * linux-user semihosting console 3486e58b1SAlex Bennée * 4*542b10bdSAlex Bennée * Copyright (c) 2024 5486e58b1SAlex Bennée * Written by Alex Bennée <alex.bennee@linaro.org> 6486e58b1SAlex Bennée * 7*542b10bdSAlex Bennée * SPDX-License-Identifier: GPL-2.0-or-later 8486e58b1SAlex Bennée */ 9486e58b1SAlex Bennée 103539d84dSAlex Bennée #define SYS_READC 0x07 113539d84dSAlex Bennée 12486e58b1SAlex Bennée #include <stdio.h> 13486e58b1SAlex Bennée #include <stdint.h> 14486e58b1SAlex Bennée #include "semicall.h" 15486e58b1SAlex Bennée main(void)16486e58b1SAlex Bennéeint main(void) 17486e58b1SAlex Bennée { 18486e58b1SAlex Bennée char c; 19486e58b1SAlex Bennée 20486e58b1SAlex Bennée printf("Semihosting Console Test\n"); 21486e58b1SAlex Bennée printf("hit X to exit:"); 22486e58b1SAlex Bennée 23486e58b1SAlex Bennée do { 24486e58b1SAlex Bennée c = __semi_call(SYS_READC, 0); 25486e58b1SAlex Bennée printf("got '%c'\n", c); 26486e58b1SAlex Bennée } while (c != 'X'); 27486e58b1SAlex Bennée 28486e58b1SAlex Bennée return 0; 29486e58b1SAlex Bennée } 30