ugBASIC 1.18
An isomorphic BASIC language compiler for retrocomputers
Loading...
Searching...
No Matches
y_text_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/****************************************************************************
38 * CODE SECTION
39 ****************************************************************************/
40
41extern char DATATYPE_AS_STRING[][16];
42
50/* <usermanual>
51@keyword Y TEXT
52
53@english
54This function performs the conversion of graphic ordinate to text ordinate, and it can be
55used to position an area of graphics on the screen, over the text.
56
57@italian
58Questa funzione esegue la conversione delle ordinate del formato grafico in ordinate del
59formato testo e può essere utilizzato per posizionare un'area della grafica
60sul testo.
61
62@syntax = Y TEXT(y)
63
64@example x = Y TEXT(100)
65
66@usedInExample graphics_text_03.bas
67
68@alias YTEXT
69
70@target all
71</usermanual> */
72/* <usermanual>
73@keyword YTEXT
74
75@english
76
77@italian
78
79@alias Y TEXT
80
81@target all
82</usermanual> */
83Variable * y_text_get( Environment * _environment, char * _y ) {
84
85 Variable * y = variable_retrieve( _environment, _y );
86 Variable * result = variable_temporary( _environment, VT_POSITION, "(y)" );
87
88 variable_move( _environment, variable_div( _environment, y->name, "FONTHEIGHT", NULL )->name, result->name );
89
90 return result;
91
92}
93
Variable * variable_retrieve(Environment *_environment, char *_name)
Variable * variable_move(Environment *_environment, char *_source, char *_destination)
Store the value of a variable inside another variable by converting it.
Variable * variable_div(Environment *_environment, char *_source, char *_destination, char *_remainder)
Make a division between two variable and return the product of them.
Variable * variable_temporary(Environment *_environment, VariableType _type, char *_meaning)
Define a temporary variable.
char * name
Definition ugbc.h:979
struct _Variable Variable
Structure of a single variable.
struct _Environment Environment
Structure of compilation environment.
@ VT_POSITION
Definition ugbc.h:468
char DATATYPE_AS_STRING[][16]
Variable * y_text_get(Environment *_environment, char *_y)
Return the text ordinate for the given graphic ordinate.
Definition y_text_get.c:83