ugBASIC 1.18
An isomorphic BASIC language compiler for retrocomputers
Loading...
Searching...
No Matches
bank_get.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#if defined(__c128__)
38
48/* <usermanual>
49@keyword BANK (function)
50
51@english
52
53The ''BANK'' function allows you to know the currently selected bank. All
54operations that are performed on the banks, and that do not explicitly indicate
55the bank to operate on, work with this implicit bank.
56
57@italian
58
59La funzione ''BANK'' consente di conoscere il banco di memoria attualmente
60selezionato. Tutte le operazioni che vengono eseguite sui banchi e che non
61indicano esplicitamente la banca su cui operare, funzionano con questo banco
62implicito.
63
64@syntax = BANK()
65
66@example x = BANK()
67
68@seeAlso BANK
69@target all
70</usermanual> */
71Variable * bank_get( Environment * _environment ) {
72
73 Variable * result = variable_temporary( _environment, VT_BYTE, "(bank number)" );
74
75 variable_move( _environment, "GEORAMBANKSHADOW", result->name );
76
77 return result;
78
79}
80
81#endif
Variable * variable_move(Environment *_environment, char *_source, char *_destination)
Store the value of a variable inside another variable by converting it.
Variable * variable_temporary(Environment *_environment, VariableType _type, char *_meaning)
Define a temporary variable.
Variable * bank_get(Environment *_environment)
Emit ASM code for instruction = BANK( ).
Definition bank_get.c:71
char * name
Definition ugbc.h:979
struct _Variable Variable
Structure of a single variable.
struct _Environment Environment
Structure of compilation environment.
@ VT_BYTE
Definition ugbc.h:450