ugBASIC 1.18
An isomorphic BASIC language compiler for retrocomputers
Loading...
Searching...
No Matches
serial_error.c
Go to the documentation of this file.
1/*****************************************************************************
2 * ugBASIC - an isomorphic BASIC language compiler for retrocomputers *
3 *****************************************************************************
4 * Copyright 2021-2026 Marco Spedaletti (asimov@mclink.it)
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 *----------------------------------------------------------------------------
18 * Concesso in licenza secondo i termini della Licenza Apache, versione 2.0
19 * (la "Licenza"); è proibito usare questo file se non in conformità alla
20 * Licenza. Una copia della Licenza è disponibile all'indirizzo:
21 *
22 * http://www.apache.org/licenses/LICENSE-2.0
23 *
24 * Se non richiesto dalla legislazione vigente o concordato per iscritto,
25 * il software distribuito nei termini della Licenza è distribuito
26 * "COSÌ COM'È", SENZA GARANZIE O CONDIZIONI DI ALCUN TIPO, esplicite o
27 * implicite. Consultare la Licenza per il testo specifico che regola le
28 * autorizzazioni e le limitazioni previste dalla medesima.
29 ****************************************************************************/
30
31/****************************************************************************
32 * INCLUDE SECTION
33 ****************************************************************************/
34
35#include "../../../ugbc.h"
36
37/****************************************************************************
38 * CODE SECTION
39 ****************************************************************************/
40
46
47/* <usermanual>
48@keyword SERIAL ERROR
49
50@english
51
52This instruction allows you to know the reason why the last operation failed.
53The numeric code must refer to the possible values for the target considered.
54Note that the value of zero means, in any target, "no error" and is the value
55returned if everything went well.
56
57@italian
58
59Questa istruzione permette di conoscere il motivo per cui l'ultima operazione
60è fallita. Il codice numerico deve essere riferito ai valori possibili per il
61target considerato. Da notare che il valore di zero significa, in qualsiasi
62target, "no error" ed è il valore restituito se tutto è andato per il meglio.
63
64@syntax = SERIAL ERROR
65
66@example IF SERIAL ERROR > 0 THEN: PRINT "Some error occurred: ";SERIAL ERROR : ENDIF
67
68@target atari
69@target coco
70
71</usermanual> */
72
73#if ! defined( __coco__ ) &&! defined( __cocob__ ) && ! defined( __atari__ ) && ! defined( __atarixl__ )
74
75Variable * serial_status( Environment * _environment ) {
76
77 Variable * result = variable_temporary( _environment, VT_SBYTE, "(data)" );
78
79 variable_store( _environment, result->name, 0 );
80
81 return result;
82
83}
84
85#endif
Variable * variable_temporary(Environment *_environment, VariableType _type, char *_meaning)
Define a temporary variable.
Variable * variable_store(Environment *_environment, char *_destination, unsigned int _value)
Store a direct value to a variable.
char * name
Definition ugbc.h:979
struct _Variable Variable
Structure of a single variable.
struct _Environment Environment
Structure of compilation environment.
@ VT_SBYTE
Definition ugbc.h:452