ugBASIC 1.18
An isomorphic BASIC language compiler for retrocomputers
Loading...
Searching...
No Matches
coco3.h
Go to the documentation of this file.
1#ifndef __UGBC_COCO3__
2#define __UGBC_COCO3__
3
4/*****************************************************************************
5 * ugBASIC - an isomorphic BASIC language compiler for retrocomputers *
6 *****************************************************************************
7 * Copyright 2021-2026 Marco Spedaletti (asimov@mclink.it)
8 *
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
12 *
13 * http://www.apache.org/licenses/LICENSE-2.0
14 *
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
20 *----------------------------------------------------------------------------
21 * Concesso in licenza secondo i termini della Licenza Apache, versione 2.0
22 * (la "Licenza"); è proibito usare questo file se non in conformità alla
23 * Licenza. Una copia della Licenza è disponibile all'indirizzo:
24 *
25 * http://www.apache.org/licenses/LICENSE-2.0
26 *
27 * Se non richiesto dalla legislazione vigente o concordato per iscritto,
28 * il software distribuito nei termini della Licenza è distribuito
29 * "COSì COM'è", SENZA GARANZIE O CONDIZIONI DI ALCUN TIPO, esplicite o
30 * implicite. Consultare la Licenza per il testo specifico che regola le
31 * autorizzazioni e le limitazioni previste dalla medesima.
32 ****************************************************************************/
33
34#include "../ugbc.h"
35
36
37
38#define SCREEN_CAPABILITIES ( ( 1<<TILEMAP_NATIVE ) | ( 1<<BITMAP_NATIVE ) )
39
40#define DEFAULT_PAINT_BUCKET_SIZE 512
41
42#define BANK_COUNT 0x2f
43#define BANK_SIZE 8192
44#define BANK_BASE_ADDRESS 0
45
46#define MAX_AUDIO_CHANNELS 1
47
48#define DSTRING_DEFAULT_COUNT 32
49#define DSTRING_DEFAULT_SPACE 512
50
51void coco3_xpen( Environment * _environment, char * _destination );
52void coco3_ypen( Environment * _environment, char * _destination );
53
54void coco3_busy_wait( Environment * _environment, char * _timing );
55
56void coco3_sys_call( Environment * _environment, int _destination );
57
58void coco3_timer_set_status_on( Environment * _environment, char * _timer );
59void coco3_timer_set_status_off( Environment * _environment, char * _timer );
60void coco3_timer_set_counter( Environment * _environment, char * _timer, char * _counter );
61void coco3_timer_set_init( Environment * _environment, char * _timer, char * _init );
62void coco3_timer_set_address( Environment * _environment, char * _timer, char * _address );
63void coco3_dload( Environment * _environment, char * _filename, char * _offset, char * _address, char * _size );
64void coco3_dsave( Environment * _environment, char * _filename, char * _offset, char * _address, char * _size );
65
66void coco3_serial_read( Environment * _environment, char * _address, char * _size );
67void coco3_serial_write( Environment * _environment, char * _address, char * _size, char * _result );
68
69void coco3_dojo_serial_put_request0( Environment * _environment, int _command, char * _param1, char * _param2, char * _result );
70void coco3_dojo_serial_put_request( Environment * _environment, int _command, char * _param1, char * _param2, char * _address, char * _size, char * _result );
71void coco3_dojo_serial_put_requestd( Environment * _environment, int _command, char * _param1, char * _param2, char * _data, char * _size, char * _result );
72void coco3_dojo_serial_put_requestds( Environment * _environment, int _command, char * _param1, char * _param2, char * _data, int _size, char * _result );
73void coco3_dojo_serial_get_response0( Environment * _environment, char * _status );
74void coco3_dojo_serial_get_response( Environment * _environment, char * _status, char * _address, char * _size );
75void coco3_dojo_serial_get_responsed( Environment * _environment, char * _status, char * _data, char * _size );
76void coco3_dojo_serial_get_response_size( Environment * _environment, char * _status, char * _data );
77void coco3_dojo_serial_get_response_payload( Environment * _environment, char * _address );
78void coco3_dojo_serial_get_response_payloadd( Environment * _environment, char * _data );
79
80void coco3_dojo_fujinet_put_request0( Environment * _environment, int _command, char * _param1, char * _param2, char * _result );
81void coco3_dojo_fujinet_put_request( Environment * _environment, int _command, char * _param1, char * _param2, char * _address, char * _size, char * _result );
82void coco3_dojo_fujinet_put_requestd( Environment * _environment, int _command, char * _param1, char * _param2, char * _data, char * _size, char * _result );
83void coco3_dojo_fujinet_put_requestds( Environment * _environment, int _command, char * _param1, char * _param2, char * _data, int _size, char * _result );
84void coco3_dojo_fujinet_get_response0( Environment * _environment, char * _status );
85void coco3_dojo_fujinet_get_response( Environment * _environment, char * _status, char * _address, char * _size );
86void coco3_dojo_fujinet_get_responsed( Environment * _environment, char * _status, char * _data, char * _size );
87void coco3_dojo_fujinet_get_response_size( Environment * _environment, char * _status, char * _data );
88void coco3_dojo_fujinet_get_response_payload( Environment * _environment, char * _address );
89void coco3_dojo_fujinet_get_response_payloadd( Environment * _environment, char * _data );
90
91void coco3_fujinet_set_device( Environment * _environment, int _device_id );
92void coco3_fujinet_set_device_var( Environment * _environment, char * _device_id );
93void coco3_fujinet_get_bytes_waiting( Environment * _environment, char * _bytes_waiting );
94void coco3_fujinet_is_connected( Environment * _environment, char * _is_connected );
95void coco3_fujinet_get_error( Environment * _environment, char * _error );
96void coco3_fujinet_is_ready( Environment * _environment, char * _ready );
97void coco3_fujinet_open( Environment * _environment, char * _url, char * _size, char * _mode, char * _trans, char * _result );
98void coco3_fujinet_close( Environment * _environment );
99void coco3_fujinet_get_status( Environment * _environment );
100void coco3_fujinet_read( Environment * _environment, char * _buffer, char * _size );
101void coco3_fujinet_write( Environment * _environment, char * _buffer, char * _size, char * _result );
102void coco3_fujinet_set_channel_mode( Environment * _environment, int _mode, char * _result );
103void coco3_fujinet_set_channel_mode_var( Environment * _environment, char * _mode, char * _result );
104void coco3_fujinet_parse_json( Environment * _environment, char * _result );
105void coco3_fujinet_json_query( Environment * _environment, char * _query, char * _size );
106void coco3_fujinet_login( Environment * _environment, char * _login, char * _size );
107void coco3_fujinet_password( Environment * _environment, char * _password, char * _size );
108
109#endif
void coco3_fujinet_is_connected(Environment *_environment, char *_is_connected)
Definition coco3.c:348
void coco3_fujinet_set_channel_mode(Environment *_environment, int _mode, char *_result)
Definition coco3.c:449
void coco3_fujinet_set_channel_mode_var(Environment *_environment, char *_mode, char *_result)
Definition coco3.c:464
void coco3_fujinet_get_error(Environment *_environment, char *_error)
Definition coco3.c:357
void coco3_dsave(Environment *_environment, char *_filename, char *_offset, char *_address, char *_size)
Definition coco3.c:247
void coco3_serial_write(Environment *_environment, char *_address, char *_size, char *_result)
Definition coco3.c:310
void coco3_dojo_serial_get_response_payload(Environment *_environment, char *_address)
Definition coco3.c:589
void coco3_dojo_fujinet_put_requestd(Environment *_environment, int _command, char *_param1, char *_param2, char *_data, char *_size, char *_result)
Definition coco3.c:858
void coco3_dojo_serial_get_responsed(Environment *_environment, char *_status, char *_data, char *_size)
Definition coco3.c:557
void coco3_dojo_fujinet_get_response0(Environment *_environment, char *_status)
Definition coco3.c:715
void coco3_fujinet_json_query(Environment *_environment, char *_query, char *_size)
Definition coco3.c:492
void coco3_fujinet_get_status(Environment *_environment)
Definition coco3.c:412
void coco3_xpen(Environment *_environment, char *_destination)
Definition coco3.c:44
void coco3_serial_read(Environment *_environment, char *_address, char *_size)
Definition coco3.c:300
void coco3_dojo_serial_put_request0(Environment *_environment, int _command, char *_param1, char *_param2, char *_result)
Definition coco3.c:611
void coco3_dojo_fujinet_put_request(Environment *_environment, int _command, char *_param1, char *_param2, char *_address, char *_size, char *_result)
Definition coco3.c:830
void coco3_sys_call(Environment *_environment, int _destination)
Definition coco3.c:114
void coco3_fujinet_login(Environment *_environment, char *_login, char *_size)
Definition coco3.c:504
void coco3_fujinet_set_device(Environment *_environment, int _device_id)
Definition coco3.c:321
void coco3_fujinet_get_bytes_waiting(Environment *_environment, char *_bytes_waiting)
Definition coco3.c:339
void coco3_dojo_fujinet_put_requestds(Environment *_environment, int _command, char *_param1, char *_param2, char *_data, int _size, char *_result)
Definition coco3.c:886
void coco3_timer_set_init(Environment *_environment, char *_timer, char *_init)
Definition coco3.c:175
void coco3_timer_set_status_off(Environment *_environment, char *_timer)
Definition coco3.c:141
void coco3_dload(Environment *_environment, char *_filename, char *_offset, char *_address, char *_size)
Definition coco3.c:205
void coco3_dojo_fujinet_put_request0(Environment *_environment, int _command, char *_param1, char *_param2, char *_result)
Definition coco3.c:804
void coco3_dojo_serial_get_response_payloadd(Environment *_environment, char *_data)
Definition coco3.c:600
void coco3_timer_set_counter(Environment *_environment, char *_timer, char *_counter)
Definition coco3.c:156
void coco3_timer_set_status_on(Environment *_environment, char *_timer)
Definition coco3.c:126
void coco3_fujinet_set_device_var(Environment *_environment, char *_device_id)
Definition coco3.c:330
void coco3_busy_wait(Environment *_environment, char *_timing)
Definition coco3.c:102
void coco3_fujinet_password(Environment *_environment, char *_password, char *_size)
Definition coco3.c:516
void coco3_dojo_serial_get_response0(Environment *_environment, char *_status)
Definition coco3.c:528
void coco3_timer_set_address(Environment *_environment, char *_timer, char *_address)
Definition coco3.c:190
void coco3_dojo_fujinet_get_response_size(Environment *_environment, char *_status, char *_data)
Definition coco3.c:764
void coco3_dojo_fujinet_get_response_payload(Environment *_environment, char *_address)
Definition coco3.c:780
void coco3_dojo_fujinet_get_response_payloadd(Environment *_environment, char *_data)
Definition coco3.c:792
void coco3_fujinet_read(Environment *_environment, char *_buffer, char *_size)
Definition coco3.c:421
void coco3_dojo_fujinet_get_response(Environment *_environment, char *_status, char *_address, char *_size)
Definition coco3.c:728
void coco3_ypen(Environment *_environment, char *_destination)
Definition coco3.c:55
void coco3_fujinet_open(Environment *_environment, char *_url, char *_size, char *_mode, char *_trans, char *_result)
Definition coco3.c:376
void coco3_dojo_serial_put_requestd(Environment *_environment, int _command, char *_param1, char *_param2, char *_data, char *_size, char *_result)
Definition coco3.c:661
void coco3_fujinet_parse_json(Environment *_environment, char *_result)
Definition coco3.c:479
void coco3_fujinet_write(Environment *_environment, char *_buffer, char *_size, char *_result)
Definition coco3.c:433
void coco3_dojo_serial_put_requestds(Environment *_environment, int _command, char *_param1, char *_param2, char *_data, int _size, char *_result)
Definition coco3.c:687
void coco3_fujinet_close(Environment *_environment)
Definition coco3.c:403
void coco3_dojo_serial_get_response_size(Environment *_environment, char *_status, char *_data)
Definition coco3.c:574
void coco3_fujinet_is_ready(Environment *_environment, char *_ready)
Definition coco3.c:366
void coco3_dojo_fujinet_get_responsed(Environment *_environment, char *_status, char *_data, char *_size)
Definition coco3.c:746
void coco3_dojo_serial_put_request(Environment *_environment, int _command, char *_param1, char *_param2, char *_address, char *_size, char *_result)
Definition coco3.c:635
void coco3_dojo_serial_get_response(Environment *_environment, char *_status, char *_address, char *_size)
Definition coco3.c:540
struct _Environment Environment
Structure of compilation environment.